.. _program_listing_file_environment_occultation.h: Program Listing for File occultation.h ====================================== |exhale_lsh| :ref:`Return to documentation for file ` (``environment/occultation.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #pragma once #include #include #include "lupnt/conversions/frame_converter.h" #include "lupnt/core/constants.h" #include "lupnt/numerics/math_utils.h" #pragma once namespace lupnt { class Occultation { private: static constexpr double r_atmos_ = R_EARTH + 100.0e3; // [m] Atmospheric mask static constexpr double r_ionos_ = R_EARTH + 965.0e3; // [m] Ionospheric mask public: static std::map ComputeOccultation( Real epoch, const Vec3& r1, const Vec3& r2, Frame frame1, Frame frame2, const std::vector& bodies, const VecXd& height_atm, const VecXd& min_elevation, const bool use_elev_mask1, const bool use_elev_mask2); static std::vector> ComputeOccultation( Real epoch, const Mat<-1, 3>& r1, const Mat<-1, 3>& r2, Frame frame1, Frame frame2, const std::vector& bodies, const VecXd& height_atm, const VecXd& min_elevation, const bool use_elev_mask1, const bool use_elev_mask2); static std::vector> ComputeOccultation( const VecX& epoch, const Mat<-1, 3>& r1, const Mat<-1, 3>& r2, Frame frame1, Frame frame2, const std::vector& bodies, const VecXd& height_atm, const VecXd& min_elevation, const bool use_elev_mask1, const bool use_elev_mask2); }; } // namespace lupnt