LSST Applications g0265f82a02+d6b5cd48b5,g02d81e74bb+a41d3748ce,g1470d8bcf6+6be6c9203b,g2079a07aa2+14824f138e,g212a7c68fe+a4f2ea4efa,g2305ad1205+72971fe858,g295015adf3+ab2c85acae,g2bbee38e9b+d6b5cd48b5,g337abbeb29+d6b5cd48b5,g3ddfee87b4+31b3a28dff,g487adcacf7+082e807817,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+b2918d57ae,g5a732f18d5+66d966b544,g64a986408d+a41d3748ce,g858d7b2824+a41d3748ce,g8a8a8dda67+a6fc98d2e7,g99cad8db69+7fe4acdf18,g9ddcbc5298+d4bad12328,ga1e77700b3+246acaaf9c,ga8c6da7877+84af8b3ff8,gb0e22166c9+3863383f4c,gb6a65358fc+d6b5cd48b5,gba4ed39666+9664299f35,gbb8dafda3b+d8d527deb2,gc07e1c2157+b2dbe6b631,gc120e1dc64+61440b2abb,gc28159a63d+d6b5cd48b5,gcf0d15dbbd+31b3a28dff,gdaeeff99f8+a38ce5ea23,ge6526c86ff+39927bb362,ge79ae78c31+d6b5cd48b5,gee10cc3b42+a6fc98d2e7,gf1cff7945b+a41d3748ce,v24.1.5.rc1
LSST Data Management Base Package
Loading...
Searching...
No Matches
Classes | Functions | Variables
lsst.meas.modelfit.priors.priorsContinued Namespace Reference

Classes

class  SemiEmpiricalPrior
 
class  SoftenedLinearPrior
 

Functions

 fitMixture (data, nComponents, minFactor=0.25, maxFactor=4.0, nIterations=20, df=float("inf"))
 

Variables

 SemiEmpiricalPriorConfig = makeConfigClass(SemiEmpiricalPriorControl)
 
 SoftenedLinearPriorConfig = makeConfigClass(SoftenedLinearPriorControl)
 

Function Documentation

◆ fitMixture()

lsst.meas.modelfit.priors.priorsContinued.fitMixture ( data,
nComponents,
minFactor = 0.25,
maxFactor = 4.0,
nIterations = 20,
df = float("inf") )
Fit a ``Mixture`` distribution to a set of (e1, e2, r) data points,
returing a ``MixturePrior`` object.

Parameters
----------
data : numpy.ndarray
    array of data points to fit; shape=(N,3)
nComponents : int
    number of components in the mixture distribution
minFactor : float
    ellipticity variance of the smallest component in the initial mixture,
    relative to the measured variance
maxFactor : float
    ellipticity variance of the largest component in the initial mixture,
    relative to the measured variance
nIterations : int
    number of expectation-maximization update iterations
df : float
    number of degrees of freedom for component Student's T distributions
    (inf=Gaussian).

Definition at line 54 of file priorsContinued.py.

55 nIterations=20, df=float("inf")):
56 """Fit a ``Mixture`` distribution to a set of (e1, e2, r) data points,
57 returing a ``MixturePrior`` object.
58
59 Parameters
60 ----------
61 data : numpy.ndarray
62 array of data points to fit; shape=(N,3)
63 nComponents : int
64 number of components in the mixture distribution
65 minFactor : float
66 ellipticity variance of the smallest component in the initial mixture,
67 relative to the measured variance
68 maxFactor : float
69 ellipticity variance of the largest component in the initial mixture,
70 relative to the measured variance
71 nIterations : int
72 number of expectation-maximization update iterations
73 df : float
74 number of degrees of freedom for component Student's T distributions
75 (inf=Gaussian).
76 """
77 components = Mixture.ComponentList()
78 rMu = data[:, 2].mean()
79 rSigma = data[:, 2].var()
80 eSigma = 0.5*(data[:, 0].var() + data[:, 1].var())
81 mu = np.array([0.0, 0.0, rMu], dtype=float)
82 baseSigma = np.array([[eSigma, 0.0, 0.0],
83 [0.0, eSigma, 0.0],
84 [0.0, 0.0, rSigma]])
85 for factor in np.linspace(minFactor, maxFactor, nComponents):
86 sigma = baseSigma.copy()
87 sigma[:2, :2] *= factor
88 components.append(Mixture.Component(1.0, mu, sigma))
89 mixture = Mixture(3, components, df)
90 restriction = MixturePrior.getUpdateRestriction()
91 for i in range(nIterations):
92 mixture.updateEM(data, restriction)
93 return mixture

Variable Documentation

◆ SemiEmpiricalPriorConfig

lsst.meas.modelfit.priors.priorsContinued.SemiEmpiricalPriorConfig = makeConfigClass(SemiEmpiricalPriorControl)

Definition at line 37 of file priorsContinued.py.

◆ SoftenedLinearPriorConfig

lsst.meas.modelfit.priors.priorsContinued.SoftenedLinearPriorConfig = makeConfigClass(SoftenedLinearPriorControl)

Definition at line 39 of file priorsContinued.py.