Package gov.nih.mipav.model.algorithms
Class CeresSolver.DoglegStrategy
java.lang.Object
gov.nih.mipav.model.algorithms.CeresSolver.TrustRegionStrategy
gov.nih.mipav.model.algorithms.CeresSolver.DoglegStrategy
- Enclosing class:
CeresSolver
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleprivate doubleprivate doubleprivate CeresSolver.DoglegTypeprivate doubleprivate doubleprivate doubleprivate CeresSolver.LinearSolverprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate doubleprivate booleanprivate Jama.Matrixprivate Jama.Matrixprivate WildMagic.LibFoundation.Mathematics.Vector2dprivate booleanFields inherited from class gov.nih.mipav.model.algorithms.CeresSolver.TrustRegionStrategy
options, perSolveOptions, summary -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidComputeCauchyPoint(CeresSolver.SparseMatrix jacobian) (package private) CeresSolver.LinearSolverSummaryComputeGaussNewtonStep(CeresSolver.TrustRegionStrategyPerSolveOptions per_solve_options, CeresSolver.SparseMatrix jacobian, double[] residuals) private voidComputeGradient(CeresSolver.SparseMatrix jacobian, double[] residuals) ComputeStep(CeresSolver.TrustRegionStrategyPerSolveOptions per_solve_options, CeresSolver.SparseMatrix jacobian, double[] residuals, double[] step) private voidComputeSubspaceDoglegStep(double[] dogleg) private booleanComputeSubspaceModel(CeresSolver.SparseMatrix jacobian) WildMagic.LibFoundation.Mathematics.Vector2dComputeSubspaceStepFromRoot(double y) private voidComputeTraditionalDoglegStep(double[] dogleg) (package private) doubleEvaluateSubspaceModel(WildMagic.LibFoundation.Mathematics.Vector2d x) private booleanFindMinimumOnTrustRegionBoundary(WildMagic.LibFoundation.Mathematics.Vector2d minimum) gradient()doubleRadius()voidStepAccepted(double step_quality) voidvoidStepRejected(double step_quality) Jama.MatrixJama.MatrixWildMagic.LibFoundation.Mathematics.Vector2d
-
Field Details
-
linear_solver_
-
radius_
private double radius_ -
max_radius_
private double max_radius_ -
min_diagonal_
private double min_diagonal_ -
max_diagonal_
private double max_diagonal_ -
mu_
private double mu_ -
min_mu_
private double min_mu_ -
max_mu_
private double max_mu_ -
mu_increase_factor_
private double mu_increase_factor_ -
increase_threshold_
private double increase_threshold_ -
decrease_threshold_
private double decrease_threshold_ -
diagonal_
-
lm_diagonal_
-
gradient_
-
gauss_newton_step_
-
alpha_
private double alpha_ -
dogleg_step_norm_
private double dogleg_step_norm_ -
reuse_
private boolean reuse_ -
dogleg_type_
-
subspace_is_one_dimensional_
private boolean subspace_is_one_dimensional_ -
subspace_basis_
private Jama.Matrix subspace_basis_ -
subspace_g_
private WildMagic.LibFoundation.Mathematics.Vector2d subspace_g_ -
subspace_B_
private Jama.Matrix subspace_B_ -
kMaxMu
private double kMaxMu -
kMinMu
private double kMinMu
-
-
Constructor Details
-
DoglegStrategy
-
-
Method Details
-
ComputeStep
public CeresSolver.TrustRegionStrategySummary ComputeStep(CeresSolver.TrustRegionStrategyPerSolveOptions per_solve_options, CeresSolver.SparseMatrix jacobian, double[] residuals, double[] step) - Specified by:
ComputeStepin classCeresSolver.TrustRegionStrategy
-
StepAccepted
public void StepAccepted(double step_quality) - Specified by:
StepAcceptedin classCeresSolver.TrustRegionStrategy
-
StepRejected
public void StepRejected(double step_quality) - Specified by:
StepRejectedin classCeresSolver.TrustRegionStrategy
-
StepIsInvalid
public void StepIsInvalid()- Specified by:
StepIsInvalidin classCeresSolver.TrustRegionStrategy
-
Radius
public double Radius()- Specified by:
Radiusin classCeresSolver.TrustRegionStrategy
-
gradient
-
gauss_newton_step
-
subspace_basis
public Jama.Matrix subspace_basis() -
subspace_g
public WildMagic.LibFoundation.Mathematics.Vector2d subspace_g() -
subspace_B
public Jama.Matrix subspace_B() -
ComputeTraditionalDoglegStep
private void ComputeTraditionalDoglegStep(double[] dogleg) -
ComputeSubspaceDoglegStep
private void ComputeSubspaceDoglegStep(double[] dogleg) -
ComputeGaussNewtonStep
CeresSolver.LinearSolverSummary ComputeGaussNewtonStep(CeresSolver.TrustRegionStrategyPerSolveOptions per_solve_options, CeresSolver.SparseMatrix jacobian, double[] residuals) -
ComputeCauchyPoint
-
ComputeGradient
-
ComputeSubspaceModel
-
FindMinimumOnTrustRegionBoundary
private boolean FindMinimumOnTrustRegionBoundary(WildMagic.LibFoundation.Mathematics.Vector2d minimum) -
MakePolynomialForBoundaryConstrainedProblem
-
ComputeSubspaceStepFromRoot
public WildMagic.LibFoundation.Mathematics.Vector2d ComputeSubspaceStepFromRoot(double y) -
EvaluateSubspaceModel
double EvaluateSubspaceModel(WildMagic.LibFoundation.Mathematics.Vector2d x)
-