agi.foundation.celestial
(agi.foundation.orbitpropagation-2020r2.jar)

## Class SphericalHarmonicGravityField

• ```public class SphericalHarmonicGravityField
extends Object```
The immutable class that describes the chosen subset and configuration of spherical harmonic gravitational model.
• ### Constructor Summary

Constructors
Constructor and Description
```SphericalHarmonicGravityField(SphericalHarmonicGravityModel gravityModel, CentralBody centralBody, int degree, int order, boolean includeTwoBody, SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, a `CentralBody` (`get`), the degree and order of the subset of the model that this field represents, and a boolean representing whether or not to include two body forces.
```SphericalHarmonicGravityField(SphericalHarmonicGravityModel gravityModel, CentralBody centralBody, int degree, int order, int partialsDegree, int partialsOrder, boolean includeTwoBody, SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, a `CentralBody` (`get`), the degree and order of the subset of the model that this field represents, the degree and order to use when calculating partial derivatives, and a boolean representing whether or not to include two body forces.
```SphericalHarmonicGravityField(SphericalHarmonicGravityModel gravityModel, int degree, int order, boolean includeTwoBody, SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, the degree and order of the subset of the model that this field represents, and a boolean representing whether or not to include two body forces.
```SphericalHarmonicGravityField(SphericalHarmonicGravityModel gravityModel, int degree, int order, int partialsDegree, int partialsOrder, boolean includeTwoBody, SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, the degree and order of the subset of the model that this field represents, the degree and order to use when calculating partial derivatives, and a boolean representing whether or not to include two body forces.
• ### Method Summary

All Methods
Modifier and Type Method and Description
`CentralBody` `getCentralBody()`
Gets the `CentralBody` (`get`) of this gravity field.
`int` `getDegree()`
Gets the degree of the subset of the model this gravitational field uses.
`double` `getGravitationalParameter()`
Gets the gravitational parameter of the central body described by this gravity field.
`boolean` `getIncludeTwoBodyGravity()`
Gets a value indicating whether to include the effects of (two-body) gravity of zero degree and order or to instead simply return the higher order perturbations.
`int` `getOrder()`
Gets the order of the subset of the model this gravitational field uses.
`int` `getPartialsDegree()`
Gets the degree of the subset of the model this gravitational field uses to calculate partial derivatives.
`int` `getPartialsOrder()`
Gets the order of the subset of the model this gravitational field uses to calculate partial derivatives.
`double` `getReferenceRadius()`
Gets the reference radius of the central body described by this gravity field.
`SphericalHarmonicsTideType` `getTideType()`
Gets the `SphericalHarmonicsTideType` to use when calculating gravitational force.
`void` `setTideType(SphericalHarmonicsTideType value)`
Sets the `SphericalHarmonicsTideType` to use when calculating gravitational force.
• ### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• ### Constructor Detail

• #### SphericalHarmonicGravityField

```public SphericalHarmonicGravityField(@Nonnull
SphericalHarmonicGravityModel gravityModel,
CentralBody centralBody,
int degree,
int order,
boolean includeTwoBody,
@Nonnull
SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, a `CentralBody` (`get`), the degree and order of the subset of the model that this field represents, and a boolean representing whether or not to include two body forces.
Parameters:
`gravityModel` - The full gravity model to configure.
`centralBody` - The central body to use for this gravity field instead of referencing `CentralBodyName` (`get` / `set`)
`degree` - The desired degree. The configured gravity field will have this degree if `FileDegree` (`get` / `set`) allows it.
`order` - The desired order. The configured gravity field will have this degree if `FileDegree` (`get` / `set`), `FileOrder` (`get` / `set`) and degree allow it.
`includeTwoBody` - The flag representing whether a force model using this field should include two body gravity, or just the higher order perturbations.
`tideType` - The type of tidal effects this field should include.
• #### SphericalHarmonicGravityField

```public SphericalHarmonicGravityField(@Nonnull
SphericalHarmonicGravityModel gravityModel,
int degree,
int order,
int partialsDegree,
int partialsOrder,
boolean includeTwoBody,
@Nonnull
SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, the degree and order of the subset of the model that this field represents, the degree and order to use when calculating partial derivatives, and a boolean representing whether or not to include two body forces.
Parameters:
`gravityModel` - The full gravity model to configure.
`degree` - The desired degree. The configured gravity field will have this degree if `FileDegree` (`get` / `set`) allows it.
`order` - The desired order. The configured gravity field will have this degree if `FileDegree` (`get` / `set`), `FileOrder` (`get` / `set`) and degree allow it.
`partialsDegree` - The degree to use for calculating partial derivatives.
`partialsOrder` - The order to use for calculating partial derivatives.
`includeTwoBody` - The flag representing whether a force model using this field should include two body gravity, or just the higher order perturbations.
`tideType` - The type of tidal effects this field should include.
Throws:
`IllegalStateException` - Thrown if the `CentralBodyName` (`get` / `set`) in model does not refer to the Earth, Sun, or Moon. In that case use `SphericalHarmonicGravityField.SphericalHarmonicGravityField(SphericalHarmonicGravityModel,agi.foundation.celestial.CentralBody,int,int,int,int,boolean,SphericalHarmonicsTideType)`
• #### SphericalHarmonicGravityField

```public SphericalHarmonicGravityField(@Nonnull
SphericalHarmonicGravityModel gravityModel,
CentralBody centralBody,
int degree,
int order,
int partialsDegree,
int partialsOrder,
boolean includeTwoBody,
@Nonnull
SphericalHarmonicsTideType tideType)```
Initializes a new instance from a `SphericalHarmonicGravityModel`, a `CentralBody` (`get`), the degree and order of the subset of the model that this field represents, the degree and order to use when calculating partial derivatives, and a boolean representing whether or not to include two body forces.
Parameters:
`gravityModel` - The full gravity model to configure.
`centralBody` - The central body to use for this gravity field instead of referencing `CentralBodyName` (`get` / `set`)
`degree` - The desired degree. The configured gravity field will have this degree if `FileDegree` (`get` / `set`) allows it.
`order` - The desired order. The configured gravity field will have this degree if `FileDegree` (`get` / `set`), `FileOrder` (`get` / `set`) and degree allow it.
`partialsDegree` - The degree to use for calculating partial derivatives.
`partialsOrder` - The order to use for calculating partial derivatives.
`includeTwoBody` - The flag representing whether a force model using this field should include two body gravity, or just the higher order perturbations.
`tideType` - The type of tidal effects this field should include.
• ### Method Detail

• #### getGravitationalParameter

`public final double getGravitationalParameter()`
Gets the gravitational parameter of the central body described by this gravity field.

`public final double getReferenceRadius()`
Gets the reference radius of the central body described by this gravity field.
• #### getCentralBody

`public final CentralBody getCentralBody()`
Gets the `CentralBody` (`get`) of this gravity field.
• #### getTideType

```@Nonnull
public final SphericalHarmonicsTideType getTideType()```
Gets the `SphericalHarmonicsTideType` to use when calculating gravitational force. If this force model is set to use permanent tides and the gravity field does not include permanent tides, then they are modeled as defined in the IERS 2003 Convention and updated in 2006.
• #### setTideType

```public final void setTideType(@Nonnull
SphericalHarmonicsTideType value)```
Sets the `SphericalHarmonicsTideType` to use when calculating gravitational force. If this force model is set to use permanent tides and the gravity field does not include permanent tides, then they are modeled as defined in the IERS 2003 Convention and updated in 2006.
• #### getIncludeTwoBodyGravity

`public final boolean getIncludeTwoBodyGravity()`
Gets a value indicating whether to include the effects of (two-body) gravity of zero degree and order or to instead simply return the higher order perturbations.
• #### getDegree

`public final int getDegree()`
Gets the degree of the subset of the model this gravitational field uses.
• #### getOrder

`public final int getOrder()`
Gets the order of the subset of the model this gravitational field uses.
• #### getPartialsDegree

`public final int getPartialsDegree()`
Gets the degree of the subset of the model this gravitational field uses to calculate partial derivatives.
• #### getPartialsOrder

`public final int getPartialsOrder()`
Gets the order of the subset of the model this gravitational field uses to calculate partial derivatives.
{"ft_lang_label":"__label__en","ft_lang_prob":0.6488845,"math_prob":0.66515815,"size":9145,"snap":"2020-34-2020-40","text_gpt3_token_len":2076,"char_repetition_ratio":0.18356854,"word_repetition_ratio":0.84,"special_character_ratio":0.17124112,"punctuation_ratio":0.11883408,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.9836024,"pos_list":[0],"im_url_duplicate_count":[null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2020-08-05T17:01:35Z\",\"WARC-Record-ID\":\"<urn:uuid:31fa4d4d-a42d-49ff-be29-0618634a6293>\",\"Content-Length\":\"44039\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:488feea3-7236-42e3-8bcb-7f3328b05706>\",\"WARC-Concurrent-To\":\"<urn:uuid:4fccb84e-fbb4-4d9c-a84e-fa437ee97392>\",\"WARC-IP-Address\":\"65.89.176.41\",\"WARC-Target-URI\":\"https://help.agi.com/AGIComponentsJava/Javadoc/agi-foundation-celestial-SphericalHarmonicGravityField.html\",\"WARC-Payload-Digest\":\"sha1:BVKUOJ34CH5MLQP223FJNTV4X5ZRKN3O\",\"WARC-Block-Digest\":\"sha1:FS7CTVZYZ4WAQDB4CZKICFXGBQHH2EL4\",\"WARC-Identified-Payload-Type\":\"text/html\",\"warc_filename\":\"/cc_download/warc_2020/CC-MAIN-2020-34/CC-MAIN-2020-34_segments_1596439735963.64_warc_CC-MAIN-20200805153603-20200805183603-00581.warc.gz\"}"}