Tudat/Astrodynamics/OrbitDetermination/EstimatableParameters/estimatableParameter.cpp
//! Function to determine whether the given (non-dynamical) parameter is a double or vector parameter.

Function to determine whether the given (non-dynamical) parameter is a double or vector parameter.
Function to determine whether the given ( non - dynamical ) parameter is a double or vector parameter .
bool isDoubleParameter( const EstimatebleParametersEnum parameterType )
{
    bool isDoubleParameter;
    switch( parameterType )
    {
    case gravitational_parameter:
        isDoubleParameter = true;
        break;
    case constant_drag_coefficient:
        isDoubleParameter = true;
        break;
    case radiation_pressure_coefficient:
        isDoubleParameter = true;
        break;
    case arc_wise_radiation_pressure_coefficient:
        isDoubleParameter = false;
        break;
    case spherical_harmonics_cosine_coefficient_block:
        isDoubleParameter = false;
        break;
    case spherical_harmonics_sine_coefficient_block:
        isDoubleParameter = false;
        break;
    case constant_rotation_rate:
        isDoubleParameter = true;
        break;
    case rotation_pole_position:
        isDoubleParameter = false;
        break;
    case constant_additive_observation_bias:
        isDoubleParameter = false;
        break;
    case arcwise_constant_additive_observation_bias:
        isDoubleParameter = false;
        break;
    case constant_relative_observation_bias:
        isDoubleParameter = false;
        break;
    case arcwise_constant_relative_observation_bias:
        isDoubleParameter = false;
        break;
    case ppn_parameter_gamma:
        isDoubleParameter = true;
        break;
    case ppn_parameter_beta:
        isDoubleParameter = true;
        break;
    case ground_station_position:
        isDoubleParameter = false;
        break;
    case equivalence_principle_lpi_violation_parameter:
        isDoubleParameter = true;
        break;
   case full_degree_tidal_love_number:
        isDoubleParameter = false;
        break;
    case single_degree_variable_tidal_love_number:
         isDoubleParameter = false;
         break;
    case empirical_acceleration_coefficients:
         isDoubleParameter = false;
         break;
     case arc_wise_empirical_acceleration_coefficients:
          isDoubleParameter = false;
          break;
    case direct_dissipation_tidal_time_lag:
         isDoubleParameter = true;
        break;
    case mean_moment_of_inertia:
         isDoubleParameter = true;
        break;
    default:
        throw std::runtime_error( "Error, parameter type " + std::to_string( parameterType ) +
                                  " not found when getting parameter type" );
    }
    return isDoubleParameter;
}
bool isDoubleParameter ( const EstimatebleParametersEnum parameterType ) { bool isDoubleParameter ; switch ( parameterType ) { case gravitational_parameter : isDoubleParameter = true ; break ; case constant_drag_coefficient : isDoubleParameter = true ; break ; case radiation_pressure_coefficient : isDoubleParameter = true ; break ; case arc_wise_radiation_pressure_coefficient : isDoubleParameter = false ; break ; case spherical_harmonics_cosine_coefficient_block : isDoubleParameter = false ; break ; case spherical_harmonics_sine_coefficient_block : isDoubleParameter = false ; break ; case constant_rotation_rate : isDoubleParameter = true ; break ; case rotation_pole_position : isDoubleParameter = false ; break ; case constant_additive_observation_bias : isDoubleParameter = false ; break ; case arcwise_constant_additive_observation_bias : isDoubleParameter = false ; break ; case constant_relative_observation_bias : isDoubleParameter = false ; break ; case arcwise_constant_relative_observation_bias : isDoubleParameter = false ; break ; case ppn_parameter_gamma : isDoubleParameter = true ; break ; case ppn_parameter_beta : isDoubleParameter = true ; break ; case ground_station_position : isDoubleParameter = false ; break ; case equivalence_principle_lpi_violation_parameter : isDoubleParameter = true ; break ; case full_degree_tidal_love_number : isDoubleParameter = false ; break ; case single_degree_variable_tidal_love_number : isDoubleParameter = false ; break ; case empirical_acceleration_coefficients : isDoubleParameter = false ; break ; case arc_wise_empirical_acceleration_coefficients : isDoubleParameter = false ; break ; case direct_dissipation_tidal_time_lag : isDoubleParameter = true ; break ; case mean_moment_of_inertia : isDoubleParameter = true ; break ; default : throw std :: runtime_error ( " " + std :: to_string ( parameterType ) + " " ) ; } return isDoubleParameter ; }
Function to determine whether the given (non-dynamical) parameter is a double or vector parameter.
Function to determine whether the given ( non - dynamical ) parameter is a double or vector parameter .