CAMP 1.0.0
Chemistry Across Multiple Phases
Functions
rxn_solver.h File Reference

Header file for abstract reaction functions. More...

Include dependency graph for rxn_solver.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void rxn_get_used_jac_elem (ModelData *model_data, Jacobian *jac)
 Get the Jacobian elements used by a particular reaction.
 
void rxn_update_ids (ModelData *model_data, int *deriv_ids, Jacobian jac)
 Update the time derivative and Jacobian array ids.
 
void rxn_update_env_state (ModelData *model_data)
 Update reaction data for new environmental state.
 
void rxn_reset_state_adjustments (ModelData *model_data)
 
void rxn_adjust_state (ModelData *model_data)
 
void rxn_print_data (void *solver_data)
 Print the reaction data.
 
void rxn_calc_deriv (ModelData *model_data, TimeDerivative time_deriv, double time_step)
 
void rxn_calc_deriv_specific_types (ModelData *model_data, TimeDerivative time_deriv, double time_step)
 
void rxn_calc_jac (ModelData *model_data, Jacobian jac, double time_step)
 
void rxn_calc_jac_specific_types (ModelData *model_data, Jacobian jac, double time_step)
 
void rxn_add_condensed_data (int rxn_type, int n_int_param, int n_float_param, int n_env_param, int *int_param, double *float_param, void *solver_data)
 Add condensed data to the condensed data block of memory.
 
void rxn_update_data (int cell_id, int *rxn_id, int update_rxn_type, void *update_data, void *solver_data)
 Update reaction data.
 
void rxn_free_update_data (void *update_data)
 Free an update data object.
 

Detailed Description

Header file for abstract reaction functions.

Definition in file rxn_solver.h.

Function Documentation

◆ rxn_add_condensed_data()

void rxn_add_condensed_data ( int  rxn_type,
int  n_int_param,
int  n_float_param,
int  n_env_param,
int *  int_param,
double *  float_param,
void *  solver_data 
)

Add condensed data to the condensed data block of memory.

Parameters
rxn_typeReaction type
n_int_paramNumber of integer parameters
n_float_paramNumber of floating-point parameters
n_env_paramNumber of environment-dependent parameters
int_paramPointer to integer parameter array
float_paramPointer to floating-point parameter array
solver_dataPointer to solver data

Definition at line 658 of file rxn_solver.c.

◆ rxn_adjust_state()

void rxn_adjust_state ( ModelData model_data)

◆ rxn_calc_deriv()

void rxn_calc_deriv ( ModelData model_data,
TimeDerivative  time_deriv,
double  time_step 
)

◆ rxn_calc_deriv_specific_types()

void rxn_calc_deriv_specific_types ( ModelData model_data,
TimeDerivative  time_deriv,
double  time_step 
)

◆ rxn_calc_jac()

void rxn_calc_jac ( ModelData model_data,
Jacobian  jac,
double  time_step 
)

◆ rxn_calc_jac_specific_types()

void rxn_calc_jac_specific_types ( ModelData model_data,
Jacobian  jac,
double  time_step 
)

◆ rxn_free_update_data()

void rxn_free_update_data ( void *  update_data)

Free an update data object.

Parameters
update_dataObject to free

Definition at line 851 of file rxn_solver.c.

◆ rxn_get_used_jac_elem()

void rxn_get_used_jac_elem ( ModelData model_data,
Jacobian jac 
)

Get the Jacobian elements used by a particular reaction.

Public reaction functions

Parameters
model_dataA pointer to the model data
jacJacobian

Definition at line 42 of file rxn_solver.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rxn_print_data()

void rxn_print_data ( void *  solver_data)

Print the reaction data.

Parameters
solver_dataPointer to the solver data

Definition at line 769 of file rxn_solver.c.

Here is the call graph for this function:

◆ rxn_reset_state_adjustments()

void rxn_reset_state_adjustments ( ModelData model_data)

◆ rxn_update_data()

void rxn_update_data ( int  cell_id,
int *  rxn_id,
int  update_rxn_type,
void *  update_data,
void *  solver_data 
)

Update reaction data.

Update data for one or more reactions. Reactions of a certain type are passed a void pointer to updated data that must be in the format specified by the reaction type. This data could be used to find specific reactions of the specified type and, for example, update rate constants.

Parameters
cell_idId of the grid cell to update
rxn_idId of the reaction (or 0 if unknown)
update_rxn_typeType of the reaction
update_dataPointer to updated data to pass to the reaction
solver_dataPointer to solver data

Definition at line 708 of file rxn_solver.c.

Here is the call graph for this function:

◆ rxn_update_env_state()

void rxn_update_env_state ( ModelData model_data)

Update reaction data for new environmental state.

Parameters
model_dataPointer to the model data with updated env state

Definition at line 224 of file rxn_solver.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rxn_update_ids()

void rxn_update_ids ( ModelData model_data,
int *  deriv_ids,
Jacobian  jac 
)

Update the time derivative and Jacobian array ids.

Parameters
model_dataPointer to the model data
deriv_idsIds for state variables on the time derivative array
jacJacobian

Definition at line 131 of file rxn_solver.c.

Here is the call graph for this function:
Here is the caller graph for this function: