Model object and parameter accessΒΆ

In [1]:
from __future__ import print_function, division
from PyAstronomy import funcFit2 as fuf2

# Create a a model object representing a Gaussian
gf = fuf2.GaussFit()

# Get some information on the available parameters
gf.parameterSummary()

# Parameters can be accessed using the square bracket
# notation
gf["A"] = -10.0
gf["sig"] = 15.77
gf["off"] = 0.96
gf["mu"] = 7.5
print()
print("Parameters values: ")
print("  A   : ", gf["A"])
print("  sig : ", gf["sig"])
print("  off : ", gf["off"])
print("  mu  : ", gf["mu"])
print()

# Wildcards can be used to specify parameters
gf["*"] = 0.75
gf["o?f"] = 1.0

# More convenient overview of parameter status
gf.parameterSummary()
print()

# Exporting and assigning parameter values via dictionary
ps = gf.parameters()
print("Parameter name/value dictionary: ", ps)
# Assigning values from dictionary (identical values here)
gf.assignValues(ps)
------------------- Parameter summary --------------------
      A =            0, free: F, restricted: F, related: F
     mu =            0, free: F, restricted: F, related: F
    sig =            0, free: F, restricted: F, related: F
    off =            0, free: F, restricted: F, related: F
    lin =            0, free: F, restricted: F, related: F
----------------------------------------------------------

Parameters values:
  A   :  -10.0
  sig :  15.77
  off :  0.96
  mu  :  7.5

------------------- Parameter summary --------------------
      A =         0.75, free: F, restricted: F, related: F
     mu =         0.75, free: F, restricted: F, related: F
    sig =         0.75, free: F, restricted: F, related: F
    off =            1, free: F, restricted: F, related: F
    lin =         0.75, free: F, restricted: F, related: F
----------------------------------------------------------

Parameter name/value dictionary:  OrderedDict([('A', 0.75), ('mu', 0.75), ('sig', 0.75), ('off', 1.0), ('lin', 0.75)])