PhreeqcRM
RM_interface_C.h
Go to the documentation of this file.
1
6#ifdef USE_MPI
7#include "mpi.h"
8#endif
9#include "IrmResult.h"
10#ifndef RM_INTERFACE_C_H
11#define RM_INTERFACE_C_H
12
13#include "irm_dll_export.h"
14
15#if defined(__cplusplus)
16extern "C" {
17#endif
49 IRM_DLL_EXPORT int RM_BmiCreate(int nxyz, int nthreads);
67 IRM_DLL_EXPORT IRM_RESULT RM_BmiDestroy(int id);
134 IRM_DLL_EXPORT IRM_RESULT RM_BmiAddOutputVars(int id, char* option, char* def);
152 IRM_DLL_EXPORT IRM_RESULT RM_BmiFinalize(int id);
170 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetComponentName(int id, char* component_name, int l);
190 IRM_DLL_EXPORT double RM_BmiGetCurrentTime(int id);
210 IRM_DLL_EXPORT double RM_BmiGetEndTime(int id);
231 IRM_DLL_EXPORT int RM_BmiGetGridRank(int id, int grid);
251 IRM_DLL_EXPORT int RM_BmiGetGridSize(int id, int grid);
274 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetGridType(int id, int grid, char* str, int l);
297 IRM_DLL_EXPORT int RM_BmiGetInputItemCount(int id);
298 //IRM_DLL_EXPORT int RM_BmiGetInputVarNamesSize(int id);
325 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetInputVarName(int id, int i, char* name, int l);
326 //IRM_DLL_EXPORT int RM_BmiGetNames(int id, const char* type, char* dest);
327 //IRM_DLL_EXPORT int RM_BmiGetNamesSize(int id, const char* type, int* dest);
350 IRM_DLL_EXPORT int RM_BmiGetOutputItemCount(int id);
351 //IRM_DLL_EXPORT int RM_BmiGetOutputVarNamesSize(int id);
378 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetOutputVarName(int id, int i, char* name, int l);
402 IRM_DLL_EXPORT int RM_BmiGetPointableItemCount(int id);
403 //IRM_DLL_EXPORT int RM_BmiGetPointableVarNamesSize(int id);
431 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetPointableVarName(int id, int i, char* name, int l);
438 IRM_DLL_EXPORT double RM_BmiGetStartTime(int id);
445 IRM_DLL_EXPORT double RM_BmiGetTime(int id);
465 IRM_DLL_EXPORT double RM_BmiGetTimeStep(int id);
489 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetTimeUnits(int id, char* units, int l);
490 // GetValue
526 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueInt(int id, char* var, int* dest);
574 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueDouble(int id, char* var, double* dest);
621 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueChar(int id, char* var, char* dest, int l);
622 // GetValuePtr
623 //IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValuePtrInt(int id, char* var, int** dest);
624 //IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValuePtrDouble(int id, char* var, double** dest);
625 //IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValuePtrChar(int id, char* var, char** dest);
653 IRM_DLL_EXPORT void* RM_BmiGetValuePtr(int id, char* var);
664 IRM_DLL_EXPORT int RM_BmiGetVarGrid(int id, char* var);
700 IRM_DLL_EXPORT int RM_BmiGetVarItemsize(int id, char* name);
735 IRM_DLL_EXPORT int RM_BmiGetVarNbytes(int id, char* name);
773 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetVarType(int id, char* name, char* vtype, int l);
809 IRM_DLL_EXPORT IRM_RESULT RM_BmiGetVarUnits(int id, char* name, char* units, int l);
931 IRM_DLL_EXPORT IRM_RESULT RM_BmiInitialize(int id, char* config_file);
932 //
933 // SetValue methods
934 //
964 IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueChar(int id, char* name, const char* src);
995 IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueDouble(int id, char* name, double src);
1032 IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueDoubleArray(int id, char* name, double* src);
1063 IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueInt(int id, char* name, int src);
1064#ifdef SKIP
1106 IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueIntArray(int id, char* name, int* src);
1107#endif
1145 IRM_DLL_EXPORT IRM_RESULT RM_BmiUpdate(int id);
1169 IRM_DLL_EXPORT IRM_RESULT RM_BmiUpdateUntil(int id, double end_time);
1173 IRM_DLL_EXPORT void RM_BmiGetValueAtIndices(int id, char* name, void* dest, int* inds, int count);
1177 IRM_DLL_EXPORT void RM_BmiSetValueAtIndices(int id, char* name, int* inds, int count, void* src);
1181 IRM_DLL_EXPORT void RM_BmiGetGridShape(int id, const int grid, int* shape);
1185 IRM_DLL_EXPORT void RM_BmiGetGridSpacing(int id, const int grid, double* spacing);
1189 IRM_DLL_EXPORT void RM_BmiGetGridOrigin(int id, const int grid, double* origin);
1193 IRM_DLL_EXPORT void RM_BmiGetGridX(int id, const int grid, double* x);
1197 IRM_DLL_EXPORT void RM_BmiGetGridY(int id, const int grid, double* y);
1201 IRM_DLL_EXPORT void RM_BmiGetGridZ(int id, const int grid, double* z);
1205 IRM_DLL_EXPORT int RM_BmiGetGridNodeCount(int id, const int grid);
1209 IRM_DLL_EXPORT int RM_BmiGetGridEdgeCount(int id, const int grid);
1213 IRM_DLL_EXPORT int RM_BmiGetGridFaceCount(int id, const int grid);
1217 IRM_DLL_EXPORT void RM_BmiGetGridEdgeNodes(int id, const int grid, int* edge_nodes);
1221 IRM_DLL_EXPORT void RM_BmiGetGridFaceEdges(int id, const int grid, int* face_edges);
1225 IRM_DLL_EXPORT void RM_BmiGetGridFaceNodes(int id, const int grid, int* face_nodes);
1229 IRM_DLL_EXPORT void RM_BmiGetGridNodesPerFace(int id, const int grid, int* nodes_per_face);
1230
1231
1232
1233
1261IRM_DLL_EXPORT IRM_RESULT RM_Abort(int id, int result, const char * err_str);
1280IRM_DLL_EXPORT IRM_RESULT RM_CloseFiles(int id);
1321IRM_DLL_EXPORT int RM_Concentrations2Utility(int id, double *c, int n, double *tc, double *p_atm);
1367#ifdef USE_MPI
1368IRM_DLL_EXPORT int RM_Create(int nxyz, MPI_Comm comm);
1369#else
1370IRM_DLL_EXPORT int RM_Create(int nxyz, int nthreads);
1371#endif
1403IRM_DLL_EXPORT IRM_RESULT RM_CreateMapping (int id, int *grid2chem);
1438IRM_DLL_EXPORT IRM_RESULT RM_DecodeError (int id, int e);
1456IRM_DLL_EXPORT IRM_RESULT RM_Destroy(int id);
1479IRM_DLL_EXPORT IRM_RESULT RM_DumpModule(int id, int dump_on, int append);
1503IRM_DLL_EXPORT IRM_RESULT RM_ErrorMessage(int id, const char *errstr);
1576IRM_DLL_EXPORT int RM_FindComponents(int id);
1610IRM_DLL_EXPORT IRM_RESULT RM_GetBackwardMapping(int id, int n, int *list, int *size);
1632IRM_DLL_EXPORT int RM_GetChemistryCellCount(int id);
1661IRM_DLL_EXPORT IRM_RESULT RM_GetComponent(int id, int num, char *chem_name, int l);
1682IRM_DLL_EXPORT int RM_GetComponentCount(int id);
1683
1732IRM_DLL_EXPORT IRM_RESULT RM_GetConcentrations(int id, double *c);
1762IRM_DLL_EXPORT IRM_RESULT RM_GetIthConcentration(int id, int i, double* c);
1795IRM_DLL_EXPORT IRM_RESULT RM_GetIthSpeciesConcentration(int id, int i, double* c);
1828IRM_DLL_EXPORT IRM_RESULT RM_SetIthConcentration(int id, int i, double* c);
1864IRM_DLL_EXPORT IRM_RESULT RM_SetIthSpeciesConcentration(int id, int i, double* c);
1865
1902IRM_DLL_EXPORT int RM_GetCurrentSelectedOutputUserNumber(int id);
1903
1929IRM_DLL_EXPORT IRM_RESULT RM_GetDensityCalculated(int id, double *density);
1933IRM_DLL_EXPORT IRM_RESULT RM_GetDensity(int id, double* density);
1934
1935
1960IRM_DLL_EXPORT IRM_RESULT RM_GetEndCell(int id, int *ec);
1988IRM_DLL_EXPORT int RM_GetEquilibriumPhasesCount(int id);
2020IRM_DLL_EXPORT IRM_RESULT RM_GetEquilibriumPhasesName(int id, int num, char *name, int l1);
2050IRM_DLL_EXPORT IRM_RESULT RM_GetErrorString(int id, char *errstr, int l);
2075IRM_DLL_EXPORT int RM_GetErrorStringLength(int id);
2108IRM_DLL_EXPORT IRM_RESULT RM_GetExchangeName(int id, int num, char *name, int l1);
2136IRM_DLL_EXPORT int RM_GetExchangeSpeciesCount(int id);
2170IRM_DLL_EXPORT IRM_RESULT RM_GetExchangeSpeciesName(int id, int num, char *name, int l1);
2195IRM_DLL_EXPORT IRM_RESULT RM_GetFilePrefix(int id, char *prefix, int l);
2223IRM_DLL_EXPORT int RM_GetGasComponentsCount(int id);
2255IRM_DLL_EXPORT IRM_RESULT RM_GetGasComponentsName(int id, int num, char *name, int l1);
2292IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompMoles(int id, double* gas_moles);
2329IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompPressures(int id, double* gas_pressure);
2367IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompPhi(int id, double* gas_phi);
2402IRM_DLL_EXPORT IRM_RESULT RM_GetGasPhaseVolume(int id, double* gas_volume);
2434IRM_DLL_EXPORT IRM_RESULT RM_GetGfw(int id, double * gfw);
2458IRM_DLL_EXPORT int RM_GetGridCellCount(int id);
2459
2460#ifdef USE_YAML
2487IRM_DLL_EXPORT int RM_GetGridCellCountYAML(const char* config_file);
2488#endif
2522IRM_DLL_EXPORT int RM_GetIPhreeqcId(int id, int i);
2550IRM_DLL_EXPORT int RM_GetKineticReactionsCount(int id);
2582IRM_DLL_EXPORT IRM_RESULT RM_GetKineticReactionsName(int id, int num, char *name, int l1);
2607IRM_DLL_EXPORT int RM_GetMpiMyself(int id);
2636IRM_DLL_EXPORT int RM_GetMpiTasks(int id);
2682IRM_DLL_EXPORT int RM_GetNthSelectedOutputUserNumber(int id, int n);
2704IRM_DLL_EXPORT IRM_RESULT RM_GetPorosity(int id, double* porosity);
2727IRM_DLL_EXPORT IRM_RESULT RM_GetPressure(int id, double* pressure);
2728
2768IRM_DLL_EXPORT IRM_RESULT RM_GetSaturationCalculated(int id, double *sat_calc);
2772IRM_DLL_EXPORT IRM_RESULT RM_GetSaturation(int id, double* sat_calc);
2773
2812IRM_DLL_EXPORT IRM_RESULT RM_GetSelectedOutput(int id, double *so);
2813
2849IRM_DLL_EXPORT int RM_GetSelectedOutputColumnCount(int id);
2885IRM_DLL_EXPORT int RM_GetSelectedOutputCount(int id);
2927IRM_DLL_EXPORT IRM_RESULT RM_GetSelectedOutputHeading(int id, int icol, char * heading, int length);
2974IRM_DLL_EXPORT int RM_GetSelectedOutputRowCount(int id);
3003IRM_DLL_EXPORT int RM_GetSICount(int id);
3037IRM_DLL_EXPORT IRM_RESULT RM_GetSIName(int id, int num, char *name, int l1);
3038
3066IRM_DLL_EXPORT int RM_GetSolidSolutionComponentsCount(int id);
3099IRM_DLL_EXPORT IRM_RESULT RM_GetSolidSolutionComponentsName(int id, int num, char *name, int l1);
3134IRM_DLL_EXPORT IRM_RESULT RM_GetSolidSolutionName(int id, int num, char *name, int l1);
3135
3163IRM_DLL_EXPORT IRM_RESULT RM_GetSolutionVolume(int id, double *vol);
3213IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesConcentrations(int id, double *species_conc);
3253IRM_DLL_EXPORT int RM_GetSpeciesCount(int id);
3294IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesD25(int id, double *diffc);
3339IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesLog10Gammas(int id, double *species_log10gammas);
3383IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesLog10Molalities(int id, double* species_log10molalities);
3429IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesName(int id, int i, char * name, int length);
3470IRM_DLL_EXPORT int RM_GetSpeciesSaveOn(int id);
3508IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesZ(int id, double *z);
3509
3534IRM_DLL_EXPORT IRM_RESULT RM_GetStartCell(int id, int *sc);
3560IRM_DLL_EXPORT IRM_RESULT RM_GetTemperature(int id, double* temperature);
3593IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceName(int id, int num, char *name, int l1);
3621IRM_DLL_EXPORT int RM_GetSurfaceSpeciesCount(int id);
3655IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceSpeciesName(int id, int num, char *name, int l1);
3688IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceType(int id, int num, char *name, int l1);
3709IRM_DLL_EXPORT int RM_GetThreadCount(int id);
3734IRM_DLL_EXPORT double RM_GetTime(int id);
3762IRM_DLL_EXPORT double RM_GetTimeConversion(int id);
3789IRM_DLL_EXPORT double RM_GetTimeStep(int id);
3809IRM_DLL_EXPORT IRM_RESULT RM_GetViscosity(int id, double* viscosity);
3810#ifdef USE_YAML
3926IRM_DLL_EXPORT IRM_RESULT RM_InitializeYAML(int id, const char* yamlfile);
3927#endif
3979 int id,
3980 double *c,
3981 int n_boundary,
3982 int *boundary_solution1,
3983 int *boundary_solution2,
3984 double *fraction1);
4021IRM_DLL_EXPORT IRM_RESULT RM_InitialSolutions2Module(int id, int* solutions);
4058IRM_DLL_EXPORT IRM_RESULT RM_InitialEquilibriumPhases2Module(int id, int* equilibrium_phases);
4095IRM_DLL_EXPORT IRM_RESULT RM_InitialExchanges2Module(int id, int* exchanges);
4132IRM_DLL_EXPORT IRM_RESULT RM_InitialSurfaces2Module(int id, int* surfaces);
4169IRM_DLL_EXPORT IRM_RESULT RM_InitialGasPhases2Module(int id, int* gas_phases);
4206IRM_DLL_EXPORT IRM_RESULT RM_InitialSolidSolutions2Module(int id, int* solid_solutions);
4243IRM_DLL_EXPORT IRM_RESULT RM_InitialKinetics2Module(int id, int* kinetics);
4324 int *initial_conditions1, // 7 x nxyz end-member 1
4325 int *initial_conditions2, // 7 x nxyz end-member 2
4326 double *fraction1); // 7 x nxyz fraction of end-member 1
4327
4383 int id,
4384 double *species_c,
4385 int n_boundary,
4386 int *boundary_solution1,
4387 int *boundary_solution2,
4388 double *fraction1);
4421 int n, // InitialPhreeqc cell number
4422 int *module_numbers, // Module cell numbers
4423 int dim_module_numbers); // Number of module cell numbers
4424
4445IRM_DLL_EXPORT IRM_RESULT RM_LoadDatabase(int id, const char *db_name);
4471IRM_DLL_EXPORT IRM_RESULT RM_LogMessage(int id, const char *str);
4508IRM_DLL_EXPORT IRM_RESULT RM_MpiWorker(int id);
4534IRM_DLL_EXPORT IRM_RESULT RM_MpiWorkerBreak(int id);
4560IRM_DLL_EXPORT IRM_RESULT RM_OpenFiles(int id);
4596IRM_DLL_EXPORT IRM_RESULT RM_OutputMessage(int id, const char *str);
4633IRM_DLL_EXPORT IRM_RESULT RM_RunCells(int id);
4660IRM_DLL_EXPORT IRM_RESULT RM_RunFile(int id, int workers, int initial_phreeqc, int utility, const char *chem_name);
4689IRM_DLL_EXPORT IRM_RESULT RM_RunString(int id, int workers, int initial_phreeqc, int utility, const char * input_string);
4713IRM_DLL_EXPORT IRM_RESULT RM_ScreenMessage(int id, const char *str);
4744IRM_DLL_EXPORT IRM_RESULT RM_SetComponentH2O(int id, int tf);
4790IRM_DLL_EXPORT IRM_RESULT RM_SetConcentrations(int id, double *c);
4829IRM_DLL_EXPORT IRM_RESULT RM_SetCurrentSelectedOutputUserNumber(int id, int n_user);
4863IRM_DLL_EXPORT IRM_RESULT RM_SetDensityUser(int id, double *density);
4867IRM_DLL_EXPORT IRM_RESULT RM_SetDensity(int id, double* density);
4868
4890IRM_DLL_EXPORT IRM_RESULT RM_SetDumpFileName(int id, const char *dump_name);
4911IRM_DLL_EXPORT IRM_RESULT RM_SetErrorHandlerMode(int id, int mode);
4934IRM_DLL_EXPORT IRM_RESULT RM_SetErrorOn(int id, int tf);
4956IRM_DLL_EXPORT IRM_RESULT RM_SetFilePrefix(int id, const char *prefix);
4957
4994IRM_DLL_EXPORT IRM_RESULT RM_SetGasCompMoles(int id, double* gas_moles);
4995
5034IRM_DLL_EXPORT IRM_RESULT RM_SetGasPhaseVolume(int id, double* gas_volume);
5035
5036
5134IRM_DLL_EXPORT IRM_RESULT RM_SetMpiWorkerCallback(int id, int (*fcn)(int *x1, void *cookie));
5205IRM_DLL_EXPORT IRM_RESULT RM_SetMpiWorkerCallbackCookie(int id, void *cookie);
5245IRM_DLL_EXPORT IRM_RESULT RM_SetNthSelectedOutput(int id, int n);
5283IRM_DLL_EXPORT IRM_RESULT RM_SetPartitionUZSolids(int id, int tf);
5309IRM_DLL_EXPORT IRM_RESULT RM_SetPorosity(int id, double *por);
5332IRM_DLL_EXPORT IRM_RESULT RM_SetPressure(int id, double *p);
5363IRM_DLL_EXPORT IRM_RESULT RM_SetPrintChemistryMask(int id, int *cell_mask);
5397IRM_DLL_EXPORT IRM_RESULT RM_SetPrintChemistryOn(int id, int workers, int initial_phreeqc, int utility);
5398
5427IRM_DLL_EXPORT IRM_RESULT RM_SetRebalanceByCell(int id, int method);
5458IRM_DLL_EXPORT IRM_RESULT RM_SetRebalanceFraction(int id, double f);
5496IRM_DLL_EXPORT IRM_RESULT RM_SetRepresentativeVolume(int id, double *rv);
5533IRM_DLL_EXPORT IRM_RESULT RM_SetSaturationUser(int id, double *sat);
5537IRM_DLL_EXPORT IRM_RESULT RM_SetSaturation(int id, double* sat);
5560IRM_DLL_EXPORT IRM_RESULT RM_SetScreenOn(int id, int tf);
5593IRM_DLL_EXPORT IRM_RESULT RM_SetSelectedOutputOn(int id, int selected_output);
5630IRM_DLL_EXPORT IRM_RESULT RM_SetSpeciesSaveOn(int id, int save_on);
5661IRM_DLL_EXPORT IRM_RESULT RM_SetTemperature(int id, double *t);
5681IRM_DLL_EXPORT IRM_RESULT RM_SetTime(int id, double time);
5701IRM_DLL_EXPORT IRM_RESULT RM_SetTimeConversion(int id, double conv_factor);
5723IRM_DLL_EXPORT IRM_RESULT RM_SetTimeStep(int id, double time_step);
5761IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsExchange(int id, int option);
5799IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsGasPhase(int id, int option);
5852IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsKinetics(int id, int option);
5890IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsPPassemblage(int id, int option);
5947IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSolution(int id, int option);
5985IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSSassemblage(int id, int option);
6023IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSurface(int id, int option);
6071IRM_DLL_EXPORT IRM_RESULT RM_SpeciesConcentrations2Module(int id, double * species_conc);
6102IRM_DLL_EXPORT IRM_RESULT RM_StateSave(int id, int istate);
6133IRM_DLL_EXPORT IRM_RESULT RM_StateApply(int id, int istate);
6156IRM_DLL_EXPORT IRM_RESULT RM_StateDelete(int id, int istate);
6197IRM_DLL_EXPORT IRM_RESULT RM_UseSolutionDensityVolume(int id, int tf);
6220IRM_DLL_EXPORT IRM_RESULT RM_WarningMessage(int id, const char *warn_str);
6221
6222#if defined(__cplusplus)
6223}
6224#endif
6225
6226#endif // RM_INTERFACE_C_H
Enumeration used to return error codes.
IRM_RESULT
Enumeration for PhreeqcRM function return codes.
Definition IrmResult.h:8
IRM_DLL_EXPORT IRM_RESULT RM_GetBackwardMapping(int id, int n, int *list, int *size)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueInt(int id, char *var, int *dest)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueChar(int id, char *var, char *dest, int l)
IRM_DLL_EXPORT IRM_RESULT RM_SetIthSpeciesConcentration(int id, int i, double *c)
IRM_DLL_EXPORT IRM_RESULT RM_SetTimeStep(int id, double time_step)
IRM_DLL_EXPORT IRM_RESULT RM_OpenFiles(int id)
IRM_DLL_EXPORT int RM_GetSelectedOutputCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetTime(int id, double time)
IRM_DLL_EXPORT int RM_GetSelectedOutputRowCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetComponentName(int id, char *component_name, int l)
IRM_DLL_EXPORT IRM_RESULT RM_SetRebalanceFraction(int id, double f)
IRM_DLL_EXPORT IRM_RESULT RM_UseSolutionDensityVolume(int id, int tf)
IRM_DLL_EXPORT int RM_BmiGetGridFaceCount(int id, const int grid)
IRM_DLL_EXPORT void RM_BmiGetGridFaceNodes(int id, const int grid, int *face_nodes)
IRM_DLL_EXPORT double RM_BmiGetTimeStep(int id)
IRM_DLL_EXPORT IRM_RESULT RM_DecodeError(int id, int e)
IRM_DLL_EXPORT IRM_RESULT RM_SetFilePrefix(int id, const char *prefix)
IRM_DLL_EXPORT IRM_RESULT RM_LoadDatabase(int id, const char *db_name)
IRM_DLL_EXPORT IRM_RESULT RM_RunFile(int id, int workers, int initial_phreeqc, int utility, const char *chem_name)
IRM_DLL_EXPORT int RM_GetGridCellCountYAML(const char *config_file)
IRM_DLL_EXPORT void RM_BmiSetValueAtIndices(int id, char *name, int *inds, int count, void *src)
IRM_DLL_EXPORT IRM_RESULT RM_SetErrorOn(int id, int tf)
IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueChar(int id, char *name, const char *src)
IRM_DLL_EXPORT IRM_RESULT RM_StateDelete(int id, int istate)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetPointableVarName(int id, int i, char *name, int l)
IRM_DLL_EXPORT IRM_RESULT RM_BmiUpdate(int id)
IRM_DLL_EXPORT int RM_GetSurfaceSpeciesCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_InitialSolutions2Module(int id, int *solutions)
IRM_DLL_EXPORT IRM_RESULT RM_SetSpeciesSaveOn(int id, int save_on)
IRM_DLL_EXPORT IRM_RESULT RM_SetComponentH2O(int id, int tf)
IRM_DLL_EXPORT int RM_FindComponents(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetGasPhaseVolume(int id, double *gas_volume)
IRM_DLL_EXPORT void RM_BmiGetGridY(int id, const int grid, double *y)
IRM_DLL_EXPORT IRM_RESULT RM_GetSelectedOutputHeading(int id, int icol, char *heading, int length)
IRM_DLL_EXPORT IRM_RESULT RM_GetDensity(int id, double *density)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesD25(int id, double *diffc)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetGridType(int id, int grid, char *str, int l)
IRM_DLL_EXPORT IRM_RESULT RM_InitialSolidSolutions2Module(int id, int *solid_solutions)
IRM_DLL_EXPORT IRM_RESULT RM_SetGasPhaseVolume(int id, double *gas_volume)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSSassemblage(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_GetIthSpeciesConcentration(int id, int i, double *c)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsGasPhase(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_CreateMapping(int id, int *grid2chem)
IRM_DLL_EXPORT IRM_RESULT RM_GetKineticReactionsName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_GetExchangeSpeciesName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT double RM_GetTimeConversion(int id)
IRM_DLL_EXPORT int RM_BmiGetGridNodeCount(int id, const int grid)
IRM_DLL_EXPORT int RM_BmiGetVarGrid(int id, char *var)
IRM_DLL_EXPORT int RM_BmiGetOutputItemCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetConcentrations(int id, double *c)
IRM_DLL_EXPORT IRM_RESULT RM_GetGfw(int id, double *gfw)
IRM_DLL_EXPORT int RM_GetMpiTasks(int id)
IRM_DLL_EXPORT int RM_GetChemistryCellCount(int id)
IRM_DLL_EXPORT int RM_GetKineticReactionsCount(int id)
IRM_DLL_EXPORT int RM_GetThreadCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_InitialPhreeqc2Module(int id, int *initial_conditions1, int *initial_conditions2, double *fraction1)
IRM_DLL_EXPORT IRM_RESULT RM_InitialEquilibriumPhases2Module(int id, int *equilibrium_phases)
IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompPhi(int id, double *gas_phi)
IRM_DLL_EXPORT IRM_RESULT RM_MpiWorkerBreak(int id)
IRM_DLL_EXPORT int RM_BmiCreate(int nxyz, int nthreads)
IRM_DLL_EXPORT IRM_RESULT RM_SetPrintChemistryMask(int id, int *cell_mask)
IRM_DLL_EXPORT IRM_RESULT RM_ScreenMessage(int id, const char *str)
IRM_DLL_EXPORT int RM_GetSolidSolutionComponentsCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiUpdateUntil(int id, double end_time)
IRM_DLL_EXPORT int RM_GetSpeciesSaveOn(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetScreenOn(int id, int tf)
IRM_DLL_EXPORT IRM_RESULT RM_SetRepresentativeVolume(int id, double *rv)
IRM_DLL_EXPORT IRM_RESULT RM_GetSIName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_GetEndCell(int id, int *ec)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesZ(int id, double *z)
IRM_DLL_EXPORT int RM_BmiGetVarItemsize(int id, char *name)
IRM_DLL_EXPORT void RM_BmiGetValueAtIndices(int id, char *name, void *dest, int *inds, int count)
IRM_DLL_EXPORT IRM_RESULT RM_GetComponent(int id, int num, char *chem_name, int l)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesName(int id, int i, char *name, int length)
IRM_DLL_EXPORT int RM_GetSICount(int id)
IRM_DLL_EXPORT void * RM_BmiGetValuePtr(int id, char *var)
IRM_DLL_EXPORT int RM_GetCurrentSelectedOutputUserNumber(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetMpiWorkerCallback(int id, int(*fcn)(int *x1, void *cookie))
IRM_DLL_EXPORT IRM_RESULT RM_RunString(int id, int workers, int initial_phreeqc, int utility, const char *input_string)
IRM_DLL_EXPORT double RM_BmiGetTime(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SpeciesConcentrations2Module(int id, double *species_conc)
IRM_DLL_EXPORT double RM_GetTimeStep(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetSelectedOutput(int id, double *so)
IRM_DLL_EXPORT IRM_RESULT RM_GetDensityCalculated(int id, double *density)
IRM_DLL_EXPORT IRM_RESULT RM_LogMessage(int id, const char *str)
IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompPressures(int id, double *gas_pressure)
IRM_DLL_EXPORT void RM_BmiGetGridZ(int id, const int grid, double *z)
IRM_DLL_EXPORT void RM_BmiGetGridOrigin(int id, const int grid, double *origin)
IRM_DLL_EXPORT IRM_RESULT RM_InitialExchanges2Module(int id, int *exchanges)
IRM_DLL_EXPORT IRM_RESULT RM_SetPartitionUZSolids(int id, int tf)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsExchange(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_SetMpiWorkerCallbackCookie(int id, void *cookie)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsPPassemblage(int id, int option)
IRM_DLL_EXPORT double RM_BmiGetCurrentTime(int id)
IRM_DLL_EXPORT int RM_GetIPhreeqcId(int id, int i)
IRM_DLL_EXPORT IRM_RESULT RM_SetPorosity(int id, double *por)
IRM_DLL_EXPORT IRM_RESULT RM_InitialPhreeqc2SpeciesConcentrations(int id, double *species_c, int n_boundary, int *boundary_solution1, int *boundary_solution2, double *fraction1)
IRM_DLL_EXPORT IRM_RESULT RM_BmiFinalize(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetVarUnits(int id, char *name, char *units, int l)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSurface(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_RunCells(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetConcentrations(int id, double *c)
IRM_DLL_EXPORT IRM_RESULT RM_GetSaturationCalculated(int id, double *sat_calc)
IRM_DLL_EXPORT IRM_RESULT RM_SetIthConcentration(int id, int i, double *c)
IRM_DLL_EXPORT int RM_BmiGetInputItemCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetCurrentSelectedOutputUserNumber(int id, int n_user)
IRM_DLL_EXPORT IRM_RESULT RM_SetDensity(int id, double *density)
IRM_DLL_EXPORT int RM_GetMpiMyself(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetTemperature(int id, double *t)
IRM_DLL_EXPORT IRM_RESULT RM_GetStartCell(int id, int *sc)
IRM_DLL_EXPORT IRM_RESULT RM_InitialGasPhases2Module(int id, int *gas_phases)
IRM_DLL_EXPORT int RM_GetComponentCount(int id)
IRM_DLL_EXPORT int RM_BmiGetGridSize(int id, int grid)
IRM_DLL_EXPORT int RM_Create(int nxyz, int nthreads)
IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueInt(int id, char *name, int src)
IRM_DLL_EXPORT IRM_RESULT RM_StateSave(int id, int istate)
IRM_DLL_EXPORT void RM_BmiGetGridSpacing(int id, const int grid, double *spacing)
IRM_DLL_EXPORT int RM_GetNthSelectedOutputUserNumber(int id, int n)
IRM_DLL_EXPORT int RM_Concentrations2Utility(int id, double *c, int n, double *tc, double *p_atm)
IRM_DLL_EXPORT IRM_RESULT RM_SetTimeConversion(int id, double conv_factor)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetValueDouble(int id, char *var, double *dest)
IRM_DLL_EXPORT IRM_RESULT RM_InitialPhreeqcCell2Module(int id, int n, int *module_numbers, int dim_module_numbers)
IRM_DLL_EXPORT IRM_RESULT RM_InitialKinetics2Module(int id, int *kinetics)
IRM_DLL_EXPORT IRM_RESULT RM_GetExchangeName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_SetPrintChemistryOn(int id, int workers, int initial_phreeqc, int utility)
IRM_DLL_EXPORT IRM_RESULT RM_SetRebalanceByCell(int id, int method)
IRM_DLL_EXPORT IRM_RESULT RM_SetDensityUser(int id, double *density)
IRM_DLL_EXPORT int RM_BmiGetPointableItemCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetPressure(int id, double *pressure)
IRM_DLL_EXPORT IRM_RESULT RM_InitializeYAML(int id, const char *yamlfile)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesLog10Molalities(int id, double *species_log10molalities)
IRM_DLL_EXPORT IRM_RESULT RM_DumpModule(int id, int dump_on, int append)
IRM_DLL_EXPORT void RM_BmiGetGridX(int id, const int grid, double *x)
IRM_DLL_EXPORT int RM_GetExchangeSpeciesCount(int id)
IRM_DLL_EXPORT int RM_BmiGetGridEdgeCount(int id, const int grid)
IRM_DLL_EXPORT void RM_BmiGetGridEdgeNodes(int id, const int grid, int *edge_nodes)
IRM_DLL_EXPORT void RM_BmiGetGridShape(int id, const int grid, int *shape)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsSolution(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueDoubleArray(int id, char *name, double *src)
IRM_DLL_EXPORT int RM_BmiGetVarNbytes(int id, char *name)
IRM_DLL_EXPORT IRM_RESULT RM_GetGasComponentsName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesConcentrations(int id, double *species_conc)
IRM_DLL_EXPORT IRM_RESULT RM_InitialPhreeqc2Concentrations(int id, double *c, int n_boundary, int *boundary_solution1, int *boundary_solution2, double *fraction1)
IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceSpeciesName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_SetNthSelectedOutput(int id, int n)
IRM_DLL_EXPORT int RM_GetSelectedOutputColumnCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetDumpFileName(int id, const char *dump_name)
IRM_DLL_EXPORT IRM_RESULT RM_SetUnitsKinetics(int id, int option)
IRM_DLL_EXPORT IRM_RESULT RM_GetSolidSolutionName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceType(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_GetErrorString(int id, char *errstr, int l)
IRM_DLL_EXPORT void RM_BmiGetGridNodesPerFace(int id, const int grid, int *nodes_per_face)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetOutputVarName(int id, int i, char *name, int l)
IRM_DLL_EXPORT int RM_GetEquilibriumPhasesCount(int id)
IRM_DLL_EXPORT double RM_BmiGetStartTime(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetIthConcentration(int id, int i, double *c)
IRM_DLL_EXPORT IRM_RESULT RM_GetSolutionVolume(int id, double *vol)
IRM_DLL_EXPORT IRM_RESULT RM_CloseFiles(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiInitialize(int id, char *config_file)
IRM_DLL_EXPORT int RM_GetErrorStringLength(int id)
IRM_DLL_EXPORT int RM_GetSpeciesCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_StateApply(int id, int istate)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetInputVarName(int id, int i, char *name, int l)
IRM_DLL_EXPORT IRM_RESULT RM_GetSpeciesLog10Gammas(int id, double *species_log10gammas)
IRM_DLL_EXPORT IRM_RESULT RM_SetErrorHandlerMode(int id, int mode)
IRM_DLL_EXPORT IRM_RESULT RM_SetGasCompMoles(int id, double *gas_moles)
IRM_DLL_EXPORT IRM_RESULT RM_BmiDestroy(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiSetValueDouble(int id, char *name, double src)
IRM_DLL_EXPORT IRM_RESULT RM_Abort(int id, int result, const char *err_str)
IRM_DLL_EXPORT double RM_GetTime(int id)
IRM_DLL_EXPORT IRM_RESULT RM_SetPressure(int id, double *p)
IRM_DLL_EXPORT IRM_RESULT RM_GetPorosity(int id, double *porosity)
IRM_DLL_EXPORT int RM_GetGasComponentsCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetVarType(int id, char *name, char *vtype, int l)
IRM_DLL_EXPORT IRM_RESULT RM_GetSurfaceName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT int RM_GetGridCellCount(int id)
IRM_DLL_EXPORT IRM_RESULT RM_InitialSurfaces2Module(int id, int *surfaces)
IRM_DLL_EXPORT IRM_RESULT RM_Destroy(int id)
IRM_DLL_EXPORT IRM_RESULT RM_GetTemperature(int id, double *temperature)
IRM_DLL_EXPORT double RM_BmiGetEndTime(int id)
IRM_DLL_EXPORT IRM_RESULT RM_ErrorMessage(int id, const char *errstr)
IRM_DLL_EXPORT IRM_RESULT RM_GetSolidSolutionComponentsName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT IRM_RESULT RM_BmiAddOutputVars(int id, char *option, char *def)
IRM_DLL_EXPORT IRM_RESULT RM_SetSelectedOutputOn(int id, int selected_output)
IRM_DLL_EXPORT IRM_RESULT RM_WarningMessage(int id, const char *warn_str)
IRM_DLL_EXPORT IRM_RESULT RM_GetSaturation(int id, double *sat_calc)
IRM_DLL_EXPORT IRM_RESULT RM_GetEquilibriumPhasesName(int id, int num, char *name, int l1)
IRM_DLL_EXPORT int RM_BmiGetGridRank(int id, int grid)
IRM_DLL_EXPORT IRM_RESULT RM_OutputMessage(int id, const char *str)
IRM_DLL_EXPORT IRM_RESULT RM_BmiGetTimeUnits(int id, char *units, int l)
IRM_DLL_EXPORT IRM_RESULT RM_SetSaturation(int id, double *sat)
IRM_DLL_EXPORT IRM_RESULT RM_SetSaturationUser(int id, double *sat)
IRM_DLL_EXPORT void RM_BmiGetGridFaceEdges(int id, const int grid, int *face_edges)
IRM_DLL_EXPORT IRM_RESULT RM_GetViscosity(int id, double *viscosity)
IRM_DLL_EXPORT IRM_RESULT RM_GetFilePrefix(int id, char *prefix, int l)
IRM_DLL_EXPORT IRM_RESULT RM_GetGasCompMoles(int id, double *gas_moles)
IRM_DLL_EXPORT IRM_RESULT RM_MpiWorker(int id)