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();
81 cout <<
"inputs:" << endl;
85 cout << iNames[i] << endl;
88 cout <<
"outputs:" << endl;
92 cout << oNames[i] << endl;
95 cout <<
"parameters:" << endl;
99 cout << pNames[i] << endl;
109 while(t + deltat < tend + 1e-10)
116 modena_inputs_set(inputs, Dpos, D);
117 modena_inputs_set(inputs, rho0Pos, rho0);
118 modena_inputs_set(inputs, p0Pos, p0);
119 modena_inputs_set(inputs, p1Byp0Pos, p1/p0);
125 if(modena_error_occurred())
127 modena_inputs_destroy(inputs);
128 modena_outputs_destroy(outputs);
131 return modena_error();
135 double mdot = modena_outputs_get(outputs, 0);
143 modena_inputs_set(inputs, Dpos, D);
144 modena_inputs_set(inputs, rho0Pos, rho1);
145 modena_inputs_set(inputs, p0Pos, p1);
146 modena_inputs_set(inputs, p1Byp0Pos, p0/p1);
152 if(modena_error_occurred())
154 modena_inputs_destroy(inputs);
155 modena_outputs_destroy(outputs);
158 return modena_error();
162 double mdot = modena_outputs_get(outputs, 0);
173 cout <<
"t = " << t <<
" rho0 = " << rho0 <<
" p0 = " << p0 <<
" p1 = " << p1 << endl;
176 modena_inputs_destroy(inputs);
177 modena_outputs_destroy(outputs);
char ** modena_model_parameters_names(const modena_model_t *self)
Function returning the names of the parameters.
char ** modena_model_inputs_names(const modena_model_t *self)
Function returning the names of the inputs.
size_t modena_model_inputs_argPos(const modena_model_t *self, const char *name)
Function determining position of an argument in the input vector.
size_t modena_model_inputs_size(const modena_model_t *self)
Function returning the size of the input vector.
size_t modena_model_outputs_size(const modena_model_t *self)
Function returning the size of the output 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.
size_t modena_model_parameters_size(const modena_model_t *self)
Function returning the size of the parameter vector.
void modena_model_argPos_check(const modena_model_t *self)
Function checking that the user has queried all input positions.
char ** modena_model_outputs_names(const modena_model_t *self)
Function returning the names of the outputs.