Skip to content
This repository has been archived by the owner on Feb 14, 2025. It is now read-only.

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 subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
Status: tudat-developer-docs
Development

No branches or pull requests

1 participant