Custom Force Extensions |
Top Previous Next |
A Custom Force Extension makes it possible to model your own forces that are not included in FreeFlyer's built-in force modeling capabilities. The Extension can be used to model any force that you want, including higher fidelity SRP models, polyhedral gravity models, and custom drag models. These forces can then be plugged into the FreeFlyer ForceModel object and evaluated at each stage of integration, thereby providing a high level of fidelity for applying the custom forces to a propagation process.
Creating a Custom Force ExtensionCreating a Custom Force Extension requires only a few extra steps beyond those covered in the Anatomy of a FreeFlyer Extension guide:
Override the BaseTypeName PropertyOverride the BaseTypeName property and return AvailableBaseTypes.CustomForce:
Implement the ICustomForceExtension InterfaceInherit from the ICustomForceExtension interface:
Implement CalculateForceImplement the ICustomForceExtension interface by implementing the CalculateForce method:
Using the Custom Force ExtensionOnce your Custom Force Extension has been built and registered for use with FreeFlyer, you can include the force in the force model for a Spacecraft with the following script syntax:
|