    

 ## On this page

  

 

 # mopsolver\_api

 Last update: 16.07.2025 

[Go to the documentation of this file.](mopsolver__api_8h.xhtml)<a id="l00001" name="l00001"></a> 1 

<a id="l00005" name="l00005"></a> 5\#ifndef DYNARDO\_MOPSOLVERAPI\_H

<a id="l00006" name="l00006"></a> 6\#define DYNARDO\_MOPSOLVERAPI\_H

<a id="l00007" name="l00007"></a> 7 

<a id="l00008" name="l00008"></a> 8\#include "mopsolver\_api\_shared.h"

<a id="l00013" name="l00013"></a> 13DYNARDO_MOPSOLVER_API

<a id="l00014" name="l00014"></a> 14int [dmop\_hasSurrogate](mopsolver__api_8h.xhtml#a25df2ddd6172194afab9ed8ee0b36387)(const char* _omdbfile);

<a id="l00015" name="l00015"></a> 15 

<a id="l00022" name="l00022"></a> 22DYNARDO_MOPSOLVER_API

<a id="l00023" name="l00023"></a> 23int [dmop\_getDimensions](mopsolver__api_8h.xhtml#a05681e0a24f0aa4edde06acfc34830a5)(const char* _omdbfile,

<a id="l00024" name="l00024"></a> 24 int *_num_inputs,

<a id="l00025" name="l00025"></a> 25 int *_num_responses);

<a id="l00026" name="l00026"></a> 26 

<a id="l00035" name="l00035"></a> 35DYNARDO_MOPSOLVER_API

<a id="l00036" name="l00036"></a> 36int [dmop\_solve\_extrapolate](mopsolver__api_8h.xhtml#a0fa8a013f592ec0bad8b5fb3a6e95b0b)(const char* _omdbfile,

<a id="l00037" name="l00037"></a> 37 unsigned int _num_designs,

<a id="l00038" name="l00038"></a> 38 const double *_inputs,

<a id="l00039" name="l00039"></a> 39 double *_responses,

<a id="l00040" name="l00040"></a> 40 int _extrapolate);

<a id="l00041" name="l00041"></a> 41 

<a id="l00049" name="l00049"></a> 49DYNARDO_MOPSOLVER_API

<a id="l00050" name="l00050"></a> 50int [dmop\_solve](mopsolver__api_8h.xhtml#a265f1dcd9f39d4123da745a42bf07dc9)(const char* _omdbfile,

<a id="l00051" name="l00051"></a> 51 unsigned int _num_designs,

<a id="l00052" name="l00052"></a> 52 const double *_inputs,

<a id="l00053" name="l00053"></a> 53 double *_responses);

<a id="l00054" name="l00054"></a> 54 

<a id="l00064" name="l00064"></a> 64DYNARDO_MOPSOLVER_API

<a id="l00065" name="l00065"></a> 65int [dmop\_gradients\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#ab816352747ec004979bdb233db495669)(

<a id="l00066" name="l00066"></a> 66 const char* _omdbfile,

<a id="l00067" name="l00067"></a> 67 unsigned int _num_designs,

<a id="l00068" name="l00068"></a> 68 const double* _inputs,

<a id="l00069" name="l00069"></a> 69 const char* _response_name,

<a id="l00070" name="l00070"></a> 70 double* _gradients,

<a id="l00071" name="l00071"></a> 71 int _extrapolate);

<a id="l00072" name="l00072"></a> 72 

<a id="l00081" name="l00081"></a> 81DYNARDO_MOPSOLVER_API

<a id="l00082" name="l00082"></a> 82int [dmop\_gradients\_per\_response](mopsolver__api_8h.xhtml#ad230a17d9e463faf2f05950871ca9809)(

<a id="l00083" name="l00083"></a> 83 const char* _omdbfile,

<a id="l00084" name="l00084"></a> 84 unsigned int _num_designs,

<a id="l00085" name="l00085"></a> 85 const double* _inputs,

<a id="l00086" name="l00086"></a> 86 const char* _response_name,

<a id="l00087" name="l00087"></a> 87 double* _gradients);

<a id="l00088" name="l00088"></a> 88 

<a id="l00098" name="l00098"></a> 98DYNARDO_MOPSOLVER_API

<a id="l00099" name="l00099"></a> 99int [dmop\_errors\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#ad58195cba96bfbdd71b064f691fa25be)(

<a id="l00100" name="l00100"></a> 100 const char* _omdbfile,

<a id="l00101" name="l00101"></a> 101 unsigned int _num_designs,

<a id="l00102" name="l00102"></a> 102 const double* _inputs,

<a id="l00103" name="l00103"></a> 103 const char* _response_name,

<a id="l00104" name="l00104"></a> 104 double* _errors,

<a id="l00105" name="l00105"></a> 105 int _extrapolate);

<a id="l00106" name="l00106"></a> 106 

<a id="l00115" name="l00115"></a> 115DYNARDO_MOPSOLVER_API

<a id="l00116" name="l00116"></a> 116int [dmop\_errors\_per\_response](mopsolver__api_8h.xhtml#acc93f43c201bd74d26e24647600600b7)(

<a id="l00117" name="l00117"></a> 117 const char* _omdbfile,

<a id="l00118" name="l00118"></a> 118 unsigned int _num_designs,

<a id="l00119" name="l00119"></a> 119 const double* _inputs,

<a id="l00120" name="l00120"></a> 120 const char* _response_name,

<a id="l00121" name="l00121"></a> 121 double* _errors);

<a id="l00122" name="l00122"></a> 122 

<a id="l00133" name="l00133"></a> 133DYNARDO_MOPSOLVER_API

<a id="l00134" name="l00134"></a> 134int [dmop\_density\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#a7a7a61f3064296a1c57b130fb2ba1cb8)(

<a id="l00135" name="l00135"></a> 135 const char* _omdbfile,

<a id="l00136" name="l00136"></a> 136 unsigned int _num_designs,

<a id="l00137" name="l00137"></a> 137 const double* _inputs,

<a id="l00138" name="l00138"></a> 138 const char* _response_name,

<a id="l00139" name="l00139"></a> 139 double* _density,

<a id="l00140" name="l00140"></a> 140 unsigned int _size_density,

<a id="l00141" name="l00141"></a> 141 int _extrapolate);

<a id="l00142" name="l00142"></a> 142 

<a id="l00152" name="l00152"></a> 152DYNARDO_MOPSOLVER_API

<a id="l00153" name="l00153"></a> 153int [dmop\_density\_per\_response](mopsolver__api_8h.xhtml#aff6e88ab02e69ca95e341b65e7d12246)(

<a id="l00154" name="l00154"></a> 154 const char* _omdbfile,

<a id="l00155" name="l00155"></a> 155 unsigned int _num_designs,

<a id="l00156" name="l00156"></a> 156 const double* _inputs,

<a id="l00157" name="l00157"></a> 157 const char* _response_name,

<a id="l00158" name="l00158"></a> 158 double* _density,

<a id="l00159" name="l00159"></a> 159 unsigned int _size_density);

<a id="l00160" name="l00160"></a> 160 

<a id="l00166" name="l00166"></a> 166DYNARDO_MOPSOLVER_API

<a id="l00167" name="l00167"></a> 167int [dmop\_getInputNames](mopsolver__api_8h.xhtml#a0d9c56750bbf39ef6e01feeeaf568b37)(const char* _omdbfile,

<a id="l00168" name="l00168"></a> 168 char **_input_names);

<a id="l00169" name="l00169"></a> 169 

<a id="l00179" name="l00179"></a> 179DYNARDO_MOPSOLVER_API

<a id="l00180" name="l00180"></a> 180int [dmop\_getInputNamesWithDelimiter](mopsolver__api_8h.xhtml#a5e1f4c22ed4444a6a456da441e63286a)(const char* _omdbfile,

<a id="l00181" name="l00181"></a> 181 char **_input_names,

<a id="l00182" name="l00182"></a> 182 const char * _delimiter);

<a id="l00183" name="l00183"></a> 183 

<a id="l00190" name="l00190"></a> 190DYNARDO_MOPSOLVER_API

<a id="l00191" name="l00191"></a> 191int [dmop\_getOutputNames](mopsolver__api_8h.xhtml#a293a88f3b04524c4f57558c35e1c9154)(const char* _omdbfile,

<a id="l00192" name="l00192"></a> 192 char **_response_names);

<a id="l00193" name="l00193"></a> 193 

<a id="l00203" name="l00203"></a> 203DYNARDO_MOPSOLVER_API

<a id="l00204" name="l00204"></a> 204int [dmop\_getOutputNamesWithDelimiter](mopsolver__api_8h.xhtml#ac35cea243a38a73791305f2cdf3b7885)(const char* _omdbfile,

<a id="l00205" name="l00205"></a> 205 char **_response_names,

<a id="l00206" name="l00206"></a> 206 const char * _delimiter);

<a id="l00207" name="l00207"></a> 207 

<a id="l00214" name="l00214"></a> 214DYNARDO_MOPSOLVER_API

<a id="l00215" name="l00215"></a> 215int [dmop\_getInputBounds](mopsolver__api_8h.xhtml#aa49bc13d0597df9c099ec27f26a8533c)(const char* _omdbfile,

<a id="l00216" name="l00216"></a> 216 double *_limits);

<a id="l00217" name="l00217"></a> 217 

<a id="l00225" name="l00225"></a> 225DYNARDO_MOPSOLVER_API

<a id="l00226" name="l00226"></a> 226int [dmop\_getInputBoundsPerParameter](mopsolver__api_8h.xhtml#ae52a44cc51e99fdae284c3832243b5e8)(const char* _omdbfile,

<a id="l00227" name="l00227"></a> 227 const char* _param_name,

<a id="l00228" name="l00228"></a> 228 double *_limits);

<a id="l00229" name="l00229"></a> 229 

<a id="l00230" name="l00230"></a> 230 

<a id="l00237" name="l00237"></a> 237DYNARDO_MOPSOLVER_API

<a id="l00238" name="l00238"></a> 238int [dmop\_getReferenceValuePerParameter](mopsolver__api_8h.xhtml#a550899662f7dcd4551a98ce6ad7b9bf7)(const char* _omdbfile,

<a id="l00239" name="l00239"></a> 239 const char* _param_name,

<a id="l00240" name="l00240"></a> 240 double * _ref_val);

<a id="l00241" name="l00241"></a> 241 

<a id="l00242" name="l00242"></a> 242 

<a id="l00250" name="l00250"></a> 250DYNARDO_MOPSOLVER_API

<a id="l00251" name="l00251"></a> 251int [dmop\_getCoPValuesPerResponse](mopsolver__api_8h.xhtml#a5a651f6f7ad0cc305eb95da2bae241da)(const char* _omdbfile,

<a id="l00252" name="l00252"></a> 252 const char* _response_name,

<a id="l00253" name="l00253"></a> 253 double *_cop_vals);

<a id="l00254" name="l00254"></a> 254 

<a id="l00255" name="l00255"></a> 255 

<a id="l00263" name="l00263"></a> 263DYNARDO_MOPSOLVER_API

<a id="l00264" name="l00264"></a> 264int [dmop\_getFilteredStatesPerResponse](mopsolver__api_8h.xhtml#ae4303398502f14c096bd4f7995f824c0)(const char* _omdbfile,

<a id="l00265" name="l00265"></a> 265 const char* _response_name,

<a id="l00266" name="l00266"></a> 266 int *_filtered_states);

<a id="l00267" name="l00267"></a> 267 

<a id="l00271" name="l00271"></a> 271DYNARDO_MOPSOLVER_API

<a id="l00272" name="l00272"></a> 272const char* [dmop\_getLastError](mopsolver__api_8h.xhtml#afd899e90ed1d65bc3d4a6877e2b24600)();

<a id="l00273" name="l00273"></a> 273 

<a id="l00277" name="l00277"></a> 277DYNARDO_MOPSOLVER_API

<a id="l00278" name="l00278"></a> 278int [dmop\_allocate\_and\_getInputBounds](mopsolver__api_8h.xhtml#aafb7d0650e3a68f467e6a4146967bcb2)(const char* _omdbfile, double **_limits);

<a id="l00279" name="l00279"></a> 279 

<a id="l00280" name="l00280"></a> 280DYNARDO_MOPSOLVER_API

<a id="l00281" name="l00281"></a> 281int dmop_allocate_and_getInputBoundsPerParameter(const char* _omdbfile, const char* _param_name, double **_limits);

<a id="l00282" name="l00282"></a> 282 

<a id="l00283" name="l00283"></a> 283DYNARDO_MOPSOLVER_API

<a id="l00284" name="l00284"></a> 284int dmop_allocate_and_getCoPValuesPerResponse( const char* _omdbfile, const char* _response_name, double **_cop_vals);

<a id="l00285" name="l00285"></a> 285 

<a id="l00286" name="l00286"></a> 286DYNARDO_MOPSOLVER_API

<a id="l00287" name="l00287"></a> 287int dmop_allocate_and_getFilteredStatesPerResponse( const char* _omdbfile, const char* _response_name, int **_filtered_states);

<a id="l00288" name="l00288"></a> 288 

<a id="l00289" name="l00289"></a> 289DYNARDO_MOPSOLVER_API

<a id="l00290" name="l00290"></a> 290int dmop_allocate_and_solve_extrapolate(const char* _omdbfile,

<a id="l00291" name="l00291"></a> 291 unsigned int _num_designs,

<a id="l00292" name="l00292"></a> 292 const double *_inputs,

<a id="l00293" name="l00293"></a> 293 double **_responses,

<a id="l00294" name="l00294"></a> 294 int _extrapolate);

<a id="l00295" name="l00295"></a> 295 

<a id="l00296" name="l00296"></a> 296DYNARDO_MOPSOLVER_API

<a id="l00297" name="l00297"></a> 297int dmop_allocate_and_solve(const char* _omdbfile,

<a id="l00298" name="l00298"></a> 298 unsigned int _num_designs,

<a id="l00299" name="l00299"></a> 299 const double *_inputs,

<a id="l00300" name="l00300"></a> 300 double **_responses);

<a id="l00301" name="l00301"></a> 301 

<a id="l00305" name="l00305"></a> 305DYNARDO_MOPSOLVER_API

<a id="l00306" name="l00306"></a> 306int [dmop\_hasSurrogate\_hash](mopsolver__api_8h.xhtml#a9ff389215cf9d81a1540e2711af36d5b)(const char* _omdbfile, const char* _hash);

<a id="l00307" name="l00307"></a> 307 

<a id="l00308" name="l00308"></a> 308 

<a id="l00309" name="l00309"></a> 309DYNARDO_MOPSOLVER_API

<a id="l00310" name="l00310"></a> 310int dmop_getDimensions_hash(const char* _omdbfile,

<a id="l00311" name="l00311"></a> 311 int *_num_inputs,

<a id="l00312" name="l00312"></a> 312 int *_num_responses,

<a id="l00313" name="l00313"></a> 313 const char* _hash);

<a id="l00314" name="l00314"></a> 314 

<a id="l00315" name="l00315"></a> 315DYNARDO_MOPSOLVER_API

<a id="l00316" name="l00316"></a> 316int dmop_solve_extrapolate_hash(const char* _omdbfile,

<a id="l00317" name="l00317"></a> 317 unsigned int _num_designs,

<a id="l00318" name="l00318"></a> 318 const double *_inputs,

<a id="l00319" name="l00319"></a> 319 double *_responses,

<a id="l00320" name="l00320"></a> 320 int _extrapolate,

<a id="l00321" name="l00321"></a> 321 const char* _hash);

<a id="l00322" name="l00322"></a> 322 

<a id="l00323" name="l00323"></a> 323DYNARDO_MOPSOLVER_API

<a id="l00324" name="l00324"></a> 324int dmop_allocate_and_solve_extrapolate_hash(const char* _omdbfile,

<a id="l00325" name="l00325"></a> 325 unsigned int _num_designs,

<a id="l00326" name="l00326"></a> 326 const double *_inputs,

<a id="l00327" name="l00327"></a> 327 double **_responses,

<a id="l00328" name="l00328"></a> 328 int _extrapolate,

<a id="l00329" name="l00329"></a> 329 const char* _hash);

<a id="l00330" name="l00330"></a> 330 

<a id="l00331" name="l00331"></a> 331DYNARDO_MOPSOLVER_API

<a id="l00332" name="l00332"></a> 332int dmop_solve_hash(

<a id="l00333" name="l00333"></a> 333 const char* _omdbfile,

<a id="l00334" name="l00334"></a> 334 unsigned int _num_designs,

<a id="l00335" name="l00335"></a> 335 const double *_inputs,

<a id="l00336" name="l00336"></a> 336 double *_responses,

<a id="l00337" name="l00337"></a> 337 const char* _hash);

<a id="l00338" name="l00338"></a> 338 

<a id="l00339" name="l00339"></a> 339DYNARDO_MOPSOLVER_API

<a id="l00340" name="l00340"></a> 340int dmop_gradients_per_response_extrapolate_hash(

<a id="l00341" name="l00341"></a> 341 const char* _omdbfile,

<a id="l00342" name="l00342"></a> 342 unsigned int _num_designs,

<a id="l00343" name="l00343"></a> 343 const double* _inputs,

<a id="l00344" name="l00344"></a> 344 const char* _response_name,

<a id="l00345" name="l00345"></a> 345 double* _gradients,

<a id="l00346" name="l00346"></a> 346 int _extrapolate,

<a id="l00347" name="l00347"></a> 347 const char* _hash);

<a id="l00348" name="l00348"></a> 348 

<a id="l00349" name="l00349"></a> 349DYNARDO_MOPSOLVER_API

<a id="l00350" name="l00350"></a> 350int dmop_gradients_per_response_hash(

<a id="l00351" name="l00351"></a> 351 const char* _omdbfile,

<a id="l00352" name="l00352"></a> 352 unsigned int _num_designs,

<a id="l00353" name="l00353"></a> 353 const double* _inputs,

<a id="l00354" name="l00354"></a> 354 const char* _response_name,

<a id="l00355" name="l00355"></a> 355 double* _gradients,

<a id="l00356" name="l00356"></a> 356 const char* _hash);

<a id="l00357" name="l00357"></a> 357 

<a id="l00358" name="l00358"></a> 358DYNARDO_MOPSOLVER_API

<a id="l00359" name="l00359"></a> 359int dmop_errors_per_response_extrapolate_hash(

<a id="l00360" name="l00360"></a> 360 const char* _omdbfile,

<a id="l00361" name="l00361"></a> 361 unsigned int _num_designs,

<a id="l00362" name="l00362"></a> 362 const double* _inputs,

<a id="l00363" name="l00363"></a> 363 const char* _response_name,

<a id="l00364" name="l00364"></a> 364 double* _errors,

<a id="l00365" name="l00365"></a> 365 int _extrapolate,

<a id="l00366" name="l00366"></a> 366 const char* _hash);

<a id="l00367" name="l00367"></a> 367 

<a id="l00368" name="l00368"></a> 368DYNARDO_MOPSOLVER_API

<a id="l00369" name="l00369"></a> 369int dmop_errors_per_response_hash(

<a id="l00370" name="l00370"></a> 370 const char* _omdbfile,

<a id="l00371" name="l00371"></a> 371 unsigned int _num_designs,

<a id="l00372" name="l00372"></a> 372 const double* _inputs,

<a id="l00373" name="l00373"></a> 373 const char* _response_name,

<a id="l00374" name="l00374"></a> 374 double* _errors,

<a id="l00375" name="l00375"></a> 375 const char* _hash);

<a id="l00376" name="l00376"></a> 376 

<a id="l00377" name="l00377"></a> 377DYNARDO_MOPSOLVER_API

<a id="l00378" name="l00378"></a> 378int dmop_density_per_response_extrapolate_hash(

<a id="l00379" name="l00379"></a> 379 const char* _omdbfile,

<a id="l00380" name="l00380"></a> 380 unsigned int _num_designs,

<a id="l00381" name="l00381"></a> 381 const double* _inputs,

<a id="l00382" name="l00382"></a> 382 const char* _response_name,

<a id="l00383" name="l00383"></a> 383 double* _density,

<a id="l00384" name="l00384"></a> 384 unsigned int _size_density,

<a id="l00385" name="l00385"></a> 385 int _extrapolate,

<a id="l00386" name="l00386"></a> 386 const char* _hash);

<a id="l00387" name="l00387"></a> 387 

<a id="l00388" name="l00388"></a> 388DYNARDO_MOPSOLVER_API

<a id="l00389" name="l00389"></a> 389int dmop_density_per_response_hash(

<a id="l00390" name="l00390"></a> 390 const char* _omdbfile,

<a id="l00391" name="l00391"></a> 391 unsigned int _num_designs,

<a id="l00392" name="l00392"></a> 392 const double* _inputs,

<a id="l00393" name="l00393"></a> 393 const char* _response_name,

<a id="l00394" name="l00394"></a> 394 double* _density,

<a id="l00395" name="l00395"></a> 395 unsigned int _size_density,

<a id="l00396" name="l00396"></a> 396 const char* _hash);

<a id="l00397" name="l00397"></a> 397 

<a id="l00398" name="l00398"></a> 398DYNARDO_MOPSOLVER_API

<a id="l00399" name="l00399"></a> 399int dmop_allocate_and_solve_hash(const char* _omdbfile,

<a id="l00400" name="l00400"></a> 400 unsigned int _num_designs,

<a id="l00401" name="l00401"></a> 401 const double *_inputs,

<a id="l00402" name="l00402"></a> 402 double **_responses,

<a id="l00403" name="l00403"></a> 403 const char* _hash);

<a id="l00404" name="l00404"></a> 404 

<a id="l00405" name="l00405"></a> 405DYNARDO_MOPSOLVER_API

<a id="l00406" name="l00406"></a> 406int dmop_getInputNames_hash(const char* _omdbfile,

<a id="l00407" name="l00407"></a> 407 char **_input_names,

<a id="l00408" name="l00408"></a> 408 const char* _hash);

<a id="l00409" name="l00409"></a> 409 

<a id="l00410" name="l00410"></a> 410DYNARDO_MOPSOLVER_API

<a id="l00411" name="l00411"></a> 411int dmop_getInputNamesWithDelimiter_hash(const char* _omdbfile,

<a id="l00412" name="l00412"></a> 412 char **_input_names,

<a id="l00413" name="l00413"></a> 413 const char * _delimiter,

<a id="l00414" name="l00414"></a> 414 const char* _hash);

<a id="l00415" name="l00415"></a> 415 

<a id="l00416" name="l00416"></a> 416DYNARDO_MOPSOLVER_API

<a id="l00417" name="l00417"></a> 417int dmop_getOutputNames_hash(const char* _omdbfile,

<a id="l00418" name="l00418"></a> 418 char **_response_names,

<a id="l00419" name="l00419"></a> 419 const char* _hash);

<a id="l00420" name="l00420"></a> 420 

<a id="l00421" name="l00421"></a> 421DYNARDO_MOPSOLVER_API

<a id="l00422" name="l00422"></a> 422int dmop_getOutputNamesWithDelimiter_hash(const char* _omdbfile,

<a id="l00423" name="l00423"></a> 423 char **_response_names,

<a id="l00424" name="l00424"></a> 424 const char * _delimiter,

<a id="l00425" name="l00425"></a> 425 const char* _hash);

<a id="l00426" name="l00426"></a> 426 

<a id="l00427" name="l00427"></a> 427DYNARDO_MOPSOLVER_API

<a id="l00428" name="l00428"></a> 428int dmop_getInputBounds_hash(const char* _omdbfile,

<a id="l00429" name="l00429"></a> 429 double *_limits,

<a id="l00430" name="l00430"></a> 430 const char* _hash);

<a id="l00431" name="l00431"></a> 431 

<a id="l00432" name="l00432"></a> 432DYNARDO_MOPSOLVER_API

<a id="l00433" name="l00433"></a> 433int dmop_allocate_and_getInputBounds_hash(const char* _omdbfile,

<a id="l00434" name="l00434"></a> 434 double **_limits,

<a id="l00435" name="l00435"></a> 435 const char* _hash);

<a id="l00436" name="l00436"></a> 436 

<a id="l00437" name="l00437"></a> 437DYNARDO_MOPSOLVER_API

<a id="l00438" name="l00438"></a> 438int dmop_getInputBoundsPerParameter_hash(const char* _omdbfile,

<a id="l00439" name="l00439"></a> 439 const char* _param_name,

<a id="l00440" name="l00440"></a> 440 double *_limits,

<a id="l00441" name="l00441"></a> 441 const char* _hash);

<a id="l00442" name="l00442"></a> 442 

<a id="l00443" name="l00443"></a> 443DYNARDO_MOPSOLVER_API

<a id="l00444" name="l00444"></a> 444int dmop_allocate_and_getInputBoundsPerParameter_hash(const char* _omdbfile,

<a id="l00445" name="l00445"></a> 445 const char* _param_name,

<a id="l00446" name="l00446"></a> 446 double **_limits,

<a id="l00447" name="l00447"></a> 447 const char* _hash);

<a id="l00448" name="l00448"></a> 448 

<a id="l00449" name="l00449"></a> 449DYNARDO_MOPSOLVER_API

<a id="l00450" name="l00450"></a> 450int dmop_getReferenceValuePerParameter_hash(const char* _omdbfile,

<a id="l00451" name="l00451"></a> 451 const char* _param_name,

<a id="l00452" name="l00452"></a> 452 double * _ref_val,

<a id="l00453" name="l00453"></a> 453 const char* _hash);

<a id="l00454" name="l00454"></a> 454 

<a id="l00455" name="l00455"></a> 455DYNARDO_MOPSOLVER_API

<a id="l00456" name="l00456"></a> 456int dmop_getCoPValuesPerResponse_hash(const char* _omdbfile,

<a id="l00457" name="l00457"></a> 457 const char* _response_name,

<a id="l00458" name="l00458"></a> 458 double *_cop_vals,

<a id="l00459" name="l00459"></a> 459 const char* _hash);

<a id="l00460" name="l00460"></a> 460 

<a id="l00461" name="l00461"></a> 461DYNARDO_MOPSOLVER_API

<a id="l00462" name="l00462"></a> 462int dmop_allocate_and_getCoPValuesPerResponse_hash(const char* _omdbfile,

<a id="l00463" name="l00463"></a> 463 const char* _response_name,

<a id="l00464" name="l00464"></a> 464 double **_cop_vals,

<a id="l00465" name="l00465"></a> 465 const char* _hash);

<a id="l00466" name="l00466"></a> 466 

<a id="l00467" name="l00467"></a> 467DYNARDO_MOPSOLVER_API

<a id="l00468" name="l00468"></a> 468int dmop_getFilteredStatesPerResponse_hash(const char* _omdbfile,

<a id="l00469" name="l00469"></a> 469 const char* _response_name,

<a id="l00470" name="l00470"></a> 470 int *_filtered_states,

<a id="l00471" name="l00471"></a> 471 const char* _hash);

<a id="l00472" name="l00472"></a> 472 

<a id="l00473" name="l00473"></a> 473DYNARDO_MOPSOLVER_API

<a id="l00474" name="l00474"></a> 474int dmop_allocate_and_getFilteredStatesPerResponse_hash(const char* _omdbfile,

<a id="l00475" name="l00475"></a> 475 const char* _response_name,

<a id="l00476" name="l00476"></a> 476 int **_filtered_states,

<a id="l00477" name="l00477"></a> 477 const char* _hash);

<a id="l00478" name="l00478"></a> 478 

<a id="l00482" name="l00482"></a> 482DYNARDO_MOPSOLVER_API

<a id="l00483" name="l00483"></a> 483const char* [dmop\_get\_version\_str](mopsolver__api_8h.xhtml#aef089009bf01e630485b835d28339b23)();

<a id="l00484" name="l00484"></a> 484 

<a id="l00488" name="l00488"></a> 488DYNARDO_MOPSOLVER_API

<a id="l00489" name="l00489"></a> 489int [dmop\_cleanup](mopsolver__api_8h.xhtml#a1e20adf4d59744ee53958b84f6061f0c)();

<a id="l00490" name="l00490"></a> 490 

<a id="l00493" name="l00493"></a> 493DYNARDO_MOPSOLVER_API

<a id="l00494" name="l00494"></a> 494int [dmop\_set\_paths\_for\_custom\_interface](mopsolver__api_8h.xhtml#a2efd4dcee48cfca4046498c55fb44dde)(const char* _program_path,

<a id="l00495" name="l00495"></a> 495 const char* _python_home,

<a id="l00496" name="l00496"></a> 496 const char* const* _python_paths,

<a id="l00497" name="l00497"></a> 497 unsigned int _num_python_paths,

<a id="l00498" name="l00498"></a> 498 const char* const* _script_paths,

<a id="l00499" name="l00499"></a> 499 unsigned int _num_script_paths,

<a id="l00500" name="l00500"></a> 500 const char* _oop_path);

<a id="l00501" name="l00501"></a> 501 

<a id="l00502" name="l00502"></a> 502\#endif // DYNARDO\_MOPSOLVERAPI\_H

[dmop\_getDimensions](mopsolver__api_8h.xhtml#a05681e0a24f0aa4edde06acfc34830a5)

DYNARDO_MOPSOLVER_API int dmop_getDimensions(const char *_omdbfile, int *_num_inputs, int *_num_responses)

**Definition:** mopsolver_dll.cpp:278



[dmop\_getInputNames](mopsolver__api_8h.xhtml#a0d9c56750bbf39ef6e01feeeaf568b37)

DYNARDO_MOPSOLVER_API int dmop_getInputNames(const char *_omdbfile, char **_input_names)

**Definition:** mopsolver_dll.cpp:375



[dmop\_solve\_extrapolate](mopsolver__api_8h.xhtml#a0fa8a013f592ec0bad8b5fb3a6e95b0b)

DYNARDO_MOPSOLVER_API int dmop_solve_extrapolate(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, double *_responses, int _extrapolate)

**Definition:** mopsolver_dll.cpp:660



[dmop\_cleanup](mopsolver__api_8h.xhtml#a1e20adf4d59744ee53958b84f6061f0c)

DYNARDO_MOPSOLVER_API int dmop_cleanup()

**Definition:** mopsolver_dll.cpp:1329



[dmop\_hasSurrogate](mopsolver__api_8h.xhtml#a25df2ddd6172194afab9ed8ee0b36387)

DYNARDO_MOPSOLVER_API int dmop_hasSurrogate(const char *_omdbfile)

**Definition:** mopsolver_dll.cpp:242



[dmop\_solve](mopsolver__api_8h.xhtml#a265f1dcd9f39d4123da745a42bf07dc9)

DYNARDO_MOPSOLVER_API int dmop_solve(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, double *_responses)

**Definition:** mopsolver_dll.cpp:641



[dmop\_getOutputNames](mopsolver__api_8h.xhtml#a293a88f3b04524c4f57558c35e1c9154)

DYNARDO_MOPSOLVER_API int dmop_getOutputNames(const char *_omdbfile, char **_response_names)

**Definition:** mopsolver_dll.cpp:403



[dmop\_set\_paths\_for\_custom\_interface](mopsolver__api_8h.xhtml#a2efd4dcee48cfca4046498c55fb44dde)

DYNARDO_MOPSOLVER_API int dmop_set_paths_for_custom_interface(const char *_program_path, const char *_python_home, const char *const *_python_paths, unsigned int _num_python_paths, const char *const *_script_paths, unsigned int _num_script_paths, const char *_oop_path)

**Definition:** mopsolver_dll.cpp:1362



[dmop\_getReferenceValuePerParameter](mopsolver__api_8h.xhtml#a550899662f7dcd4551a98ce6ad7b9bf7)

DYNARDO_MOPSOLVER_API int dmop_getReferenceValuePerParameter(const char *_omdbfile, const char *_param_name, double *_ref_val)

**Definition:** mopsolver_dll.cpp:894



[dmop\_getCoPValuesPerResponse](mopsolver__api_8h.xhtml#a5a651f6f7ad0cc305eb95da2bae241da)

DYNARDO_MOPSOLVER_API int dmop_getCoPValuesPerResponse(const char *_omdbfile, const char *_response_name, double *_cop_vals)

**Definition:** mopsolver_dll.cpp:931



[dmop\_getInputNamesWithDelimiter](mopsolver__api_8h.xhtml#a5e1f4c22ed4444a6a456da441e63286a)

DYNARDO_MOPSOLVER_API int dmop_getInputNamesWithDelimiter(const char *_omdbfile, char **_input_names, const char *_delimiter)

**Definition:** mopsolver_dll.cpp:390



[dmop\_density\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#a7a7a61f3064296a1c57b130fb2ba1cb8)

DYNARDO_MOPSOLVER_API int dmop_density_per_response_extrapolate(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_density, unsigned int _size_density, int _extrapolate)

**Definition:** mopsolver_dll.cpp:1267



[dmop\_hasSurrogate\_hash](mopsolver__api_8h.xhtml#a9ff389215cf9d81a1540e2711af36d5b)

DYNARDO_MOPSOLVER_API int dmop_hasSurrogate_hash(const char *_omdbfile, const char *_hash)

**Definition:** mopsolver_dll.cpp:253



[dmop\_getInputBounds](mopsolver__api_8h.xhtml#aa49bc13d0597df9c099ec27f26a8533c)

DYNARDO_MOPSOLVER_API int dmop_getInputBounds(const char *_omdbfile, double *_limits)

**Definition:** mopsolver_dll.cpp:765



[dmop\_allocate\_and\_getInputBounds](mopsolver__api_8h.xhtml#aafb7d0650e3a68f467e6a4146967bcb2)

DYNARDO_MOPSOLVER_API int dmop_allocate_and_getInputBounds(const char *_omdbfile, double **_limits)

**Definition:** mopsolver_dll.cpp:802



[dmop\_gradients\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#ab816352747ec004979bdb233db495669)

DYNARDO_MOPSOLVER_API int dmop_gradients_per_response_extrapolate(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_gradients, int _extrapolate)

**Definition:** mopsolver_dll.cpp:1177



[dmop\_getOutputNamesWithDelimiter](mopsolver__api_8h.xhtml#ac35cea243a38a73791305f2cdf3b7885)

DYNARDO_MOPSOLVER_API int dmop_getOutputNamesWithDelimiter(const char *_omdbfile, char **_response_names, const char *_delimiter)

**Definition:** mopsolver_dll.cpp:418



[dmop\_errors\_per\_response](mopsolver__api_8h.xhtml#acc93f43c201bd74d26e24647600600b7)

DYNARDO_MOPSOLVER_API int dmop_errors_per_response(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_errors)

**Definition:** mopsolver_dll.cpp:1210



[dmop\_gradients\_per\_response](mopsolver__api_8h.xhtml#ad230a17d9e463faf2f05950871ca9809)

DYNARDO_MOPSOLVER_API int dmop_gradients_per_response(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_gradients)

**Definition:** mopsolver_dll.cpp:1165



[dmop\_errors\_per\_response\_extrapolate](mopsolver__api_8h.xhtml#ad58195cba96bfbdd71b064f691fa25be)

DYNARDO_MOPSOLVER_API int dmop_errors_per_response_extrapolate(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_errors, int _extrapolate)

**Definition:** mopsolver_dll.cpp:1222



[dmop\_getFilteredStatesPerResponse](mopsolver__api_8h.xhtml#ae4303398502f14c096bd4f7995f824c0)

DYNARDO_MOPSOLVER_API int dmop_getFilteredStatesPerResponse(const char *_omdbfile, const char *_response_name, int *_filtered_states)

**Definition:** mopsolver_dll.cpp:995



[dmop\_getInputBoundsPerParameter](mopsolver__api_8h.xhtml#ae52a44cc51e99fdae284c3832243b5e8)

DYNARDO_MOPSOLVER_API int dmop_getInputBoundsPerParameter(const char *_omdbfile, const char *_param_name, double *_limits)

**Definition:** mopsolver_dll.cpp:829



[dmop\_get\_version\_str](mopsolver__api_8h.xhtml#aef089009bf01e630485b835d28339b23)

DYNARDO_MOPSOLVER_API const char * dmop_get_version_str()

**Definition:** mopsolver_dll.cpp:1349



[dmop\_getLastError](mopsolver__api_8h.xhtml#afd899e90ed1d65bc3d4a6877e2b24600)

DYNARDO_MOPSOLVER_API const char * dmop_getLastError()

**Definition:** mopsolver_dll.cpp:1299



[dmop\_density\_per\_response](mopsolver__api_8h.xhtml#aff6e88ab02e69ca95e341b65e7d12246)

DYNARDO_MOPSOLVER_API int dmop_density_per_response(const char *_omdbfile, unsigned int _num_designs, const double *_inputs, const char *_response_name, double *_density, unsigned int _size_density)

**Definition:** mopsolver_dll.cpp:1255