/* * File: InitCalcAtmosCOESA.c * * Code generated for Simulink model 'SIL'. * * Model version : 1.470 * Simulink Coder version : 9.0 (R2018b) 24-May-2018 * C/C++ source code generated on : Thu Oct 22 10:25:15 2020 */ #include "rtwtypes.h" #include "COESA76DATA_MACRO.h" #include "COESAATMOS_MACRO.h" #include #include "InitCalcAtmosCOESA.h" /* Initialize pressure and temperature tables. */ void InitCalcAtmosCOESA(real_T *temperature76, real_T *pressureRatio76) { if (temperature76[0] != TEMPERATURE0 ) { int_T k; temperature76[0] = TEMPERATURE0; pressureRatio76[0] = 1.0; /* set up the data at the 1976 altitude breakpoints */ for (k=0; k<(NUM1976PTS-1); k++) { if (tempGradient76[k] != 0.0) { temperature76[k+1] = temperature76[k] + tempGradient76[k]*(altitude76[k+1] - altitude76[k]); pressureRatio76[k+1] = pressureRatio76[k] * exp(log(temperature76[k]/temperature76[k+1]) * GMR/tempGradient76[k]); } else { temperature76[k+1] = temperature76[k]; pressureRatio76[k+1] = pressureRatio76[k] * exp((-GMR)*(altitude76[k+1] - altitude76[k])/temperature76[k]); } } } } /* * File trailer for generated code. * * [EOF] */