diff --git a/aerodynamic_analysis/src/taw/tawDefaultData.cpp b/aerodynamic_analysis/src/taw/tawDefaultData.cpp index 89b07197f7cdce0a2a8b3788e30b7ee79c78bbaf..92d7b680e860e73078a9ba41452b94d3a623f0cc 100644 --- a/aerodynamic_analysis/src/taw/tawDefaultData.cpp +++ b/aerodynamic_analysis/src/taw/tawDefaultData.cpp @@ -42,6 +42,8 @@ tawDefaultData::tawDefaultData(const std::shared_ptr<RuntimeIO>& rtIO) engineType(EndnodeReadOnly<std::string>("type").read(rtIO->acxml.at("requirements_and_specifications/design_specification/propulsion/propulsor")).value()), initialCruiseMachNumber(EndnodeReadOnly<double>("initial_cruise_mach_number").read( rtIO->acxml.at("requirements_and_specifications/requirements/top_level_aircraft_requirements/design_mission")).value()), + initialCruise_Altitude( + EndnodeReadOnly<double>("requirements_and_specifications/requirements/top_level_aircraft_requirements/design_mission/initial_cruise_altitude").read(rtIO->acxml).value()), bestCruiseCL(EndnodeReadOnly<double>("analysis/aerodynamics/lift_coefficients/C_LoptimumCruise").read(rtIO->acxml).value()), designCoGX(EndnodeReadOnly<double>("analysis/masses_cg_inertia/design_mass/mass_properties/center_of_gravity/x").read(rtIO->acxml).value()), designCoGY(EndnodeReadOnly<double>("analysis/masses_cg_inertia/design_mass/mass_properties/center_of_gravity/y").read(rtIO->acxml).value()), diff --git a/aerodynamic_analysis/src/taw/tawDefaultData.h b/aerodynamic_analysis/src/taw/tawDefaultData.h index deb545803b0822a12b3e899746a5c0aee795c7d0..2fb7370f68cc38cc6b1b0848eb6824353ac864be 100644 --- a/aerodynamic_analysis/src/taw/tawDefaultData.h +++ b/aerodynamic_analysis/src/taw/tawDefaultData.h @@ -50,6 +50,7 @@ class tawDefaultData { std::string engineType; /**< Information about the propulsor type (e.g. fan) [-] */ double delta_isa; /**< temperature delta to ISA Standard Atmosphere [K] */ double initialCruiseMachNumber; /**< Mach number flown in initial cruise phase at initial cruise altitude [-] */ + double initialCruise_Altitude; /**< Initial cruise altitude [m] */ /* All EndnodeReadOnly Values are converted automatically to SI-Units/RADIAN when read in */ double bestCruiseCL; /**< optimum cruise lift coefficient */ double designCoGX; /**< x Position of design center of gravity in [m] */ diff --git a/aerodynamic_analysis/src/taw/tawDefaultStrategy.cpp b/aerodynamic_analysis/src/taw/tawDefaultStrategy.cpp index 8bb1d2609915fe0d9a599689bfe90dfdf6a469f0..165efecfb9ff9fbbe86965a1a019f618c82de72d 100644 --- a/aerodynamic_analysis/src/taw/tawDefaultStrategy.cpp +++ b/aerodynamic_analysis/src/taw/tawDefaultStrategy.cpp @@ -89,7 +89,6 @@ void tawDefaultStrategy::run() { // set individual flight conditions if enabled if (config_->setFlightConditionsMode) { - myRuntimeInfo->out << "test" << endl; config_->flightConditions.clear(); config_->machNumbers.clear(); config_->flightConditions.push_back(flightCondition()); @@ -114,12 +113,53 @@ void tawDefaultStrategy::run() { config_->machNumbers.push_back(config_->flightConditions.back().Mach); config_->flightConditions.push_back(flightCondition()); - config_->flightConditions.back().Mach = data_->initialCruiseMachNumber - 0.2; - config_->flightConditions.back().Altitude = 77776; + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber - 0.15; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber - 0.1; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber - 0.05; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber - 0.02; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber + 0.01; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; + config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; + config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; + config_->machNumbers.push_back(config_->flightConditions.back().Mach); + + config_->flightConditions.push_back(flightCondition()); + config_->flightConditions.back().Mach = data_->initialCruiseMachNumber + 0.05; + config_->flightConditions.back().Altitude = data_->initialCruise_Altitude; config_->flightConditions.back().extrapolationMargin = config_->autoFC_extrapolationMargin; config_->flightConditions.back().allowGridChange = config_->autoFC_allowGridChange; config_->machNumbers.push_back(config_->flightConditions.back().Mach); - exit(1); } // loop over all cg positions and stabilizer angles