Skip to content

gw*() terms no longer actually need fixed= parameter. #532

Open
@krivit

Description

@krivit

It used to be that in terms such as gwesp() in curved mode, we would specify the initial parameter value in the term and then set fixed=FALSE (or leave it blank, since it's the default), e.g., gwesp(.2). This is no longer needed, nor is a valid way to specify initial parameter value. In fact, it issues a warning:

library(ergm)
data(faux.mesa.high)
summary(faux.mesa.high~gwesp(.5))
#> Warning: In term 'gwesp' in package 'ergm': When 'fixed=FALSE' parameter
#> 'decay' has no effect. To specify an initial value for 'decay', use the
#> 'control.ergm()' parameter 'init='.

The decay parameter is passed if and only if fixed=TRUE. And so, why not infer the fixedness from the parameter?

  1. If decay= is passed, fixed=TRUE is assumed.
  2. If decay= is NULL, fixed=FALSE is assumed.
  3. Passing fixed= directly is deprecated and then removed.

To summarise, gwesp() or just gwesp fits a curved model, whereas gwesp(.2) fits a fixed model.

For a softer transition, we can set the default for fixed= to NA (i.e., infer from decay=), so that code that's not too old still works. After a few releases, we could remove fixed= altogether.

Any thoughts? @drh20drh20 , @handcock , @mbojan , @sgoodreau , @CarterButts , @martinamorris ?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions