Vary

Top  Previous  Next

Description


The Vary command specifies the object properties that are adjusted in a Targeting loop in order to meet a set of user-specified goals. For each object property that is varied, the user specifies an initial guess and a perturbation value, and optionally the allowable range of values. For more information, see the Targeting Guide.

 

 

Syntax


Target;

      Iterate mySpacecraft;

      Vary myImpulsiveBurn.BurnDirection[0] = 0 + 0.001;

      Maneuver mySpacecraft using myImpulsiveBurn;

      Achieve mySpacecraft.A = 8000 +/- 2;

      Report myImpulsiveBurn.BurnDirection[0], mySpacecraft.A;

End;
 
Target using myDifferentialCorrector;
     // ...
     Vary myVariable1 = 50 - 0.001;
     Vary myVariable2 = 50 - 0.001 within <30,70>;
     // ...
End;

 

Where:

50 is the seed value for myVariable1 and myVariable2

-0.001 is the perturbation for myVariable1 and myVariable2

<30,70> is the allowable range of myVariable2

 

 

Details


The Vary command can only be used inside a Target loop.

At least one Vary command must be present in every Target loop. As a best practice, a Target loop should have one Vary command for each Achieve command.

An unlimited number of object properties may be varied in a single Target loop, but a separate Vary command is required for each.

Any FreeFlyer object property can be varied.

The seed, perturbation, and allowable range values can be specified using numerical values or FreeFlyer object properties or expressions that evaluate to numbers.

The Achieve command defines the goals of a targeting loop: the desired value and the allowable tolerance for a user-specified set of object properties.

If the current values of the Varied properties are such that the properties being Achieved are within the specified tolerance of their goal value, the Target loop converges on the current solution.

The ResetTargetingLoop command is an optional component of the Targeting loop which allows the user to re-initialize the seeds and perturbations of a Vary command if the Targeting process is not converging properly.

 

 

Command Editor


Note: To add a Vary command via Command Editor, you must start with a Target command, and edit the Choose Parameters To Vary page.

 

Parameter to Vary

Determines the object properties that are adjusted in the Target loop in order to meet the user-specified goals

 

Seed Value

Initial guess for the varied parameter

 

Perturbation

Offset from the current guess that is used to determine the next guess

 

Use Constraints

Determines whether the allowable guesses will be constrained to a specified range of values

 

Minimum

Lowest allowable value for the varied parameter

 

Maximum

Highest allowable value for the varied parameter

 

Script

Displays the FreeFlyer Script that is generated by the editor

The ellipsis (...) indicates that additional script can be added inside the loop

 

Description

Displays descriptions of the editor and its fields

Description text changes as the mouse pointer moves over the different fields within the editor

 

 

 

See Also


Achieve Command

Iterate Command

Maneuver Command

DifferentialCorrector Properties and Methods

ResetTargetingLoop

Target Command

Targeting Guide