Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Write section on implementation of new gravity models #25

Open
MiguelAvillez opened this issue Jul 20, 2023 · 0 comments
Open

Write section on implementation of new gravity models #25

MiguelAvillez opened this issue Jul 20, 2023 · 0 comments

Comments

@MiguelAvillez
Copy link
Member

Modifications that were necessary to implement the polyhedron gravity model are listed below. Same changes would be necessary for any other new gravity model.

  • createGravityField.h/cpp: Added PolyhedronGravityFieldSettings class, edited createGravityFieldModel function, added new polyhedronGravitySettings functions
  • polyhedronGravityField.h/cpp: created files. Added PolyhedronGravityField and PolyhedronGravityCache classes; other functions
  • polyhedronGravityModel.h/cpp: created files
  • Third body gravity:
    • thirdBodyPerturbation.h: added ThirdBodyPolyhedronGravitationalAccelerationModel typedef
    • tudatTypeTraits.h: added polyhedron to gravitation type traits
  • createAccelerationModels.h/cpp:
    • New functions: createPolyhedronGravityAcceleration, createThirdBodyPolyhedronGravityAccelerationModel
    • Modified functions: createDirectGravitationalAcceleration, createThirdBodyGravitationalAcceleration,
      createGravitationalAccelerationModel, createAccelerationModel
  • accelerationModelTypes.h/cpp:
    • added polyhedron to enum (2 times)
    • Modified functions: getAccelerationModelName, getAccelerationModelType, isAccelerationDirectGravitational,
      isAccelerationFromThirdBody, getAssociatedThirdBodyAcceleration
  • accelerationSettings.h: new settings function
  • createEnvironmentUpdater.cpp:
    • Modified functions: createTranslationalEquationsOfMotionEnvironmentUpdaterSettings
  • Dependent variables: propagationOutput.h
    • Add enum to getGravitationalAccelerationForDependentVariables
    • getDoubleDependentVariableFunction: add gravity model to gravity_field_potential_dependent_variable and gravity_field_laplacian_of_potential_dependent_variable switch/case
  • Variational equations for polyhedron gravity
    • polyhedronAccelerationPartials.h/cpp: created files
    • createAccelerationPartials.h: edited createAnalyticalAccelerationPartial function
    • thirdBodyGravityPartial.h: edited getAccelerationTypeOfThirdBodyGravity, getCentralBodyNameFromThirdBodyAccelerationPartial
    • tudatTypeTraits.h: added polyhedron to acceleration_partials type traits
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: tudat-developer-docs
Development

No branches or pull requests

1 participant