Skip to content
Snippets Groups Projects
Commit cb101d79 authored by Oliver Heidmann's avatar Oliver Heidmann Committed by Uwe Schulzweida
Browse files

fixed missing output, fixed wrong index when accessing parg

parent 4454cd59
No related branches found
No related tags found
1 merge request!96Develop
......@@ -293,14 +293,8 @@ private:
}
void
TL_TC(GridSpecifications &p_grid_specs, std::function<long(long)> f)
T_TL_TC(GridSpecifications &p_grid_specs, std::function<long(long)> f)
{
parg = &arg[2];
if (*parg == '=') parg++;
if (!isdigit((int) *parg)) cdo_abort("Wrong parameter: %s", arg);
p_grid_specs.ntr = atoi(parg);
p_grid_specs.nsp = NTR2NSP(p_grid_specs.ntr);
p_grid_specs.nlat = f(p_grid_specs.ntr);
p_grid_specs.nlon = nlat_to_nlon(p_grid_specs.nlat);
......@@ -308,6 +302,24 @@ private:
lookup(p_grid_specs);
}
void
T(GridSpecifications &p_grid_specs, std::function<long(long)> f)
{
parg = &arg[1];
if (*parg == '=') parg++;
if (!isdigit((int) *parg)) cdo_abort("Wrong parameter: %s", arg);
p_grid_specs.ntr = atoi(parg);
T_TL_TC(p_grid_specs, f);
}
void
TL_TC(GridSpecifications &p_grid_specs, std::function<long(long)> f)
{
parg = &arg[2];
if (*parg == '=') parg++;
if (!isdigit((int) *parg)) cdo_abort("Wrong parameter: %s", arg);
p_grid_specs.ntr = atoi(parg);
T_TL_TC(p_grid_specs, f);
}
void
NI(GridSpecifications &p_grid_specs1, GridSpecifications &p_grid_specs2)
......@@ -343,6 +355,9 @@ private:
p_grid_specs2.ni = p_grid_specs1.ni;
p_grid_specs2.nrooti = p_grid_specs1.nrooti;
p_grid_specs2.nlevel = p_grid_specs1.nlevel;
p_grid_specs1.nout = true;
p_grid_specs2.nout = true;
}
void
......@@ -470,15 +485,15 @@ public:
void
run()
{
if (argument.substr(0, 2 ) == "TL" ) { TL_TC(grid_specs2, ntr_to_nlat_linear ) ; }
else if (argument.substr(0, 2 ) == "TC" ) { TL_TC(grid_specs3, ntr_to_nlat_cubic ) ; }
else if (argument.substr(0, 1 ) == "T" ) { TL_TC(grid_specs1, ntr_to_nlat ) ; }
else if (argument.substr(0, 2 ) == "NI" ) { NI(grid_specs1, grid_specs2 ) ; }
else if (argument.substr(0, 4 ) == "NLON" ) { NLON(grid_specs1, grid_specs2, grid_specs3 ) ; }
else if (argument.substr(0, 4 ) == "NLAT" ) { NLAT(grid_specs1, grid_specs2, grid_specs3 ) ; }
else if (argument.substr(0, 1 ) == "N" ) { N_O(grid_specs1, grid_specs2, grid_specs3 ) ; }
else if (argument.substr(0, 1 ) == "O" ) { N_O(grid_specs1, grid_specs2, grid_specs3, 16 ) ; }
else if (argument.substr(0, 4 ) == "ICON" ) { ICON(grid_specs1, grid_specs2 ) ; }
if (argument.substr(0, 2) == "TL") { TL_TC(grid_specs2, ntr_to_nlat_linear); }
else if (argument.substr(0, 2) == "TC") { TL_TC(grid_specs3, ntr_to_nlat_cubic); }
else if (argument.substr(0, 1) == "T") { T(grid_specs1, ntr_to_nlat); }
else if (argument.substr(0, 2) == "NI") { NI(grid_specs1, grid_specs2); }
else if (argument.substr(0, 4) == "NLON") { NLON(grid_specs1, grid_specs2, grid_specs3); }
else if (argument.substr(0, 4) == "NLAT") { NLAT(grid_specs1, grid_specs2, grid_specs3); }
else if (argument.substr(0, 1) == "N") { N_O(grid_specs1, grid_specs2, grid_specs3); }
else if (argument.substr(0, 1) == "O") { N_O(grid_specs1, grid_specs2, grid_specs3, 16); }
else if (argument.substr(0, 4) == "ICON") { ICON(grid_specs1, grid_specs2); }
else { cdo_abort("Unsupported parameter: %s", arg); }
grid_specs1.nsp = NTR2NSP(grid_specs1.ntr);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment