48 main(
int argc,
char *argv[])
50 const double D = 0.01;
59 const double deltat = 1e-3;
60 const double tend = 5.5;
62 double m0 = p0*V0/287.1/T;
63 double m1 = p1*V1/287.1/T;
72 if(modena_error_occurred())
74 return modena_error();
88 while(t + deltat < tend + 1e-10)
95 modena_inputs_set(inputs, Dpos, D);
96 modena_inputs_set(inputs, T0Pos, T);
97 modena_inputs_set(inputs, p0Pos, p0);
98 modena_inputs_set(inputs, p1Byp0Pos, p1/p0);
104 if(modena_error_occurred())
106 modena_inputs_destroy(inputs);
107 modena_outputs_destroy(outputs);
110 return modena_error();
114 double mdot = modena_outputs_get(outputs, 0);
122 modena_inputs_set(inputs, Dpos, D);
123 modena_inputs_set(inputs, T0Pos, T);
124 modena_inputs_set(inputs, p0Pos, p1);
125 modena_inputs_set(inputs, p1Byp0Pos, p0/p1);
131 if(modena_error_occurred())
133 modena_inputs_destroy(inputs);
134 modena_outputs_destroy(outputs);
137 return modena_error();
141 double mdot = modena_outputs_get(outputs, 0);
152 cout <<
"t = " << t <<
" rho0 = " << rho0 <<
" p0 = " << p0 <<
" p1 = " << p1 << endl;
155 modena_inputs_destroy(inputs);
156 modena_outputs_destroy(outputs);
size_t modena_model_inputs_argPos(const modena_model_t *self, const char *name)
Function determining position of an argument in the input vector.
modena_model_t * modena_model_new(const char *modelId)
Function fetching a surrogate model from MongoDB.
int modena_model_call(modena_model_t *self, modena_inputs_t *inputs, modena_outputs_t *outputs)
Function calling the surrogate model and checking for errors.
int main(int argc, char *argv[])
Reads parameters. Creates struts and walls. Saves foam morphology to a file.
void modena_model_destroy(modena_model_t *self)
Function deallocating the memory allocated for the surrogate model.
void modena_model_argPos_check(const modena_model_t *self)
Function checking that the user has queried all input positions.