@@ -1507,7 +1507,7 @@ double AtmProfile::poli2(double ha,
15071507 b = b / (x2 - x1);
15081508 a = y1 - c * x1 * x1 - b * x1;
15091509
1510- return a + b * ha + c * pow (ha, 2 );
1510+ return a + b * ha + c * pow (ha, ( int ) 2 );
15111511}
15121512
15131513size_t AtmProfile::mkAtmProfile ()
@@ -1670,7 +1670,7 @@ size_t AtmProfile::mkAtmProfile()
16701670
16711671 // std::cout << "layer: " << i << " " << v_layerPressure[i - 1] - dp * pow(dp1, i - 1) << " " << prLimit << std::endl;
16721672
1673- if ( (v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 ) <= prLimit ) ) { // && (v_layerTemperature[i - 1] <= tx[typeAtm_ - 1][0]) ) { // &&(fabs(prLimit-v_layerPressure[i - 1]-dp*pow(dp1,i-1))>=20.0) ) {
1673+ if ( (v_layerPressure[i - 1 ] - dp * pow (dp1, ( int )( i - 1 ) ) <= prLimit ) ) { // && (v_layerTemperature[i - 1] <= tx[typeAtm_ - 1][0]) ) { // &&(fabs(prLimit-v_layerPressure[i - 1]-dp*pow(dp1,i-1))>=20.0) ) {
16741674
16751675 if (control) {
16761676
@@ -1695,15 +1695,15 @@ size_t AtmProfile::mkAtmProfile()
16951695
16961696 for (k = 0 ; k < 20 ; k++) {
16971697
1698- if ( (fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 ) > 1.05 *px[typeAtm_ - 1 ][k])) &&
1699- (fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 ) - px[typeAtm_ - 1 ][k])) <= minmin ) {
1698+ if ( (fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, ( int )( i - 1 ) ) > 1.05 *px[typeAtm_ - 1 ][k])) &&
1699+ (fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, ( int )( i - 1 ) ) - px[typeAtm_ - 1 ][k])) <= minmin ) {
17001700
17011701 j = k;
17021702
17031703 /* std::cout << "P=" << v_layerPressure[i - 1] - dp * pow(dp1, i - 1)
17041704 << " prLimit=" << prLimit << " px[" << typeAtm_ - 1 << "][" << k << "]="
17051705 << px[typeAtm_ - 1][k] << std::endl; */
1706- minmin = fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 ) - px[typeAtm_ - 1 ][k]);
1706+ minmin = fabs (v_layerPressure[i - 1 ] - dp * pow (dp1, int ( i - 1 ) ) - px[typeAtm_ - 1 ][k]);
17071707 /* std::cout << " minmin=" << minmin << std::endl; */
17081708
17091709 }
@@ -1775,20 +1775,20 @@ size_t AtmProfile::mkAtmProfile()
17751775 // std::cout << "i,j,v_layerPressure.size()-1=" << i << "," << j << "," << v_layerPressure.size() - 1 << std::endl;
17761776
17771777 if (i > v_layerPressure.size () - 1 ) {
1778- v_layerPressure.push_back (v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 ));
1778+ v_layerPressure.push_back (v_layerPressure[i - 1 ] - dp * pow (dp1, ( int )( i - 1 ) ));
17791779
17801780 www = v_layerWaterVapor[i - 1 ] / 1000.0 ; // in kg/m**3
1781- g = g0 * pow (1 . + ((v_layerThickness[i - 1 ] / 1000.0 )) / rt, - 2 ); // gravity corrected for the height
1781+ g = g0 * pow (1 . + ((v_layerThickness[i - 1 ] / 1000.0 )) / rt, ( int )(- 2 ) ); // gravity corrected for the height
17821782 dh = 288.6948 * v_layerTemperature[i - 1 ] * (1.0 + 0.61 * www / 1000.0 )
17831783 * log (v_layerPressure[i - 1 ] / v_layerPressure[i]) / g;
17841784 v_layerThickness.push_back (v_layerThickness[i - 1 ] + dh);
17851785 // std::cout << "layer " << i << " v_layerThickness[" << i << "]=" << v_layerThickness[i] << " v_layerPressure[" << i << "]=" << v_layerPressure[i] << std::endl;
17861786 v_layerTemperature.push_back (v_layerTemperature[i - 1 ] + dt * dh / 1000.0 );
17871787 v_layerWaterVapor.push_back (wgr0 * exp (-v_layerThickness[i] / (1000.0 * h0))); // r[i] in kgr/(m**2*1000m) [gr/m**3]
17881788 } else {
1789- v_layerPressure[i] = v_layerPressure[i - 1 ] - dp * pow (dp1, i - 1 );
1789+ v_layerPressure[i] = v_layerPressure[i - 1 ] - dp * pow (dp1, ( int )( i - 1 ) );
17901790 www = v_layerWaterVapor[i - 1 ] / 1000.0 ; // in kg/m**3
1791- g = g0 * pow (1 . + ((v_layerThickness[i - 1 ] / 1000.0 )) / rt, - 2 ); // gravity corrected for the height
1791+ g = g0 * pow (1 . + ((v_layerThickness[i - 1 ] / 1000.0 )) / rt, ( int )(- 2 ) ); // gravity corrected for the height
17921792 dh = 288.6948 * v_layerTemperature[i - 1 ] * (1.0 + 0.61 * www / 1000.0 )
17931793 * log (v_layerPressure[i - 1 ] / v_layerPressure[i]) / g;
17941794 v_layerThickness[i] = v_layerThickness[i - 1 ] + dh;
0 commit comments