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

Header file for aerosol phase functions. More...

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

Go to the source code of this file.

Functions

int aero_phase_get_used_jac_elem (ModelData *model_data, int aero_phase_idx, int state_var_id, bool *jac_struct)
 Flag Jacobian elements used in calculations of mass and volume.
 
void aero_phase_get_mass__kg_m3 (ModelData *model_data, int aero_phase_idx, double *state_var, double *mass, double *MW, double *jac_elem_mass, double *jac_elem_MW)
 Get the mass and average MW in an aerosol phase.
 
void aero_phase_get_volume__m3_m3 (ModelData *model_data, int aero_phase_idx, double *state_var, double *volume, double *jac_elem)
 Get the volume of an aerosol phase.
 
void * aero_phase_find (ModelData *model_data, int int_aero_phase_idx)
 
void aero_phase_print_data (void *solver_data)
 Print the aerosol phase data.
 
void aero_phase_add_condensed_data (int n_int_param, int n_float_param, int *int_param, double *float_param, void *solver_data)
 Add condensed data to the condensed data block for aerosol phases.
 

Detailed Description

Header file for aerosol phase functions.

Definition in file aero_phase_solver.h.

Function Documentation

◆ aero_phase_add_condensed_data()

void aero_phase_add_condensed_data ( int  n_int_param,
int  n_float_param,
int *  int_param,
double *  float_param,
void *  solver_data 
)

Add condensed data to the condensed data block for aerosol phases.

Parameters
n_int_paramNumber of integer parameters
n_float_paramNumber of floating-point parameters
int_paramPointer to the integer parameter array
float_paramPointer to the floating-point parameter array
solver_dataPointer to the solver data

Definition at line 175 of file aero_phase_solver.c.

◆ aero_phase_find()

void * aero_phase_find ( ModelData model_data,
int  int_aero_phase_idx 
)

◆ aero_phase_get_mass__kg_m3()

void aero_phase_get_mass__kg_m3 ( ModelData model_data,
int  aero_phase_idx,
double *  state_var,
double *  mass,
double *  MW,
double *  jac_elem_mass,
double *  jac_elem_MW 
)

Get the mass and average MW in an aerosol phase.

Parameters
model_dataPointer to the model data (state, env, aero_phase)
aero_phase_idxIndex of the aerosol phase to use in the calculation
state_varPointer the aerosol phase on the state variable array
massPointer to hold total aerosol phase mass ( \(\mbox{\si{\kilogram\per\cubic\metre}}\) or \(\mbox{\si{\kilogram\per particle}}\))
MWPointer to hold average MW of the aerosol phase ( \(\mbox{\si{\kilogram\per\mol}}\))
jac_elem_massWhen not NULL, a pointer to an array whose length is the number of Jacobian elements used in calculations of mass and volume of this aerosol phase returned by aero_phase_get_used_jac_elem and whose contents will be set to the partial derivatives of mass by concentration \(\frac{dm}{dy_i}\) of each component species \(y_i\).
jac_elem_MWWhen not NULL, a pointer to an array whose length is the number of Jacobian elements used in calculations of mass and volume of this aerosol phase returned by aero_phase_get_used_jac_elem and whose contents will be set to the partial derivatives of total molecular weight by concentration \(\frac{dMW}{dy_i}\) of each component species \(y_i\).

Definition at line 93 of file aero_phase_solver.c.

Here is the caller graph for this function:

◆ aero_phase_get_used_jac_elem()

int aero_phase_get_used_jac_elem ( ModelData model_data,
int  aero_phase_idx,
int  state_var_id,
bool *  jac_struct 
)

Flag Jacobian elements used in calculations of mass and volume.

Parameters
model_dataPointer to the model data(state, env, aero_phase)
aero_phase_idxIndex of the aerosol phase to find elements for
state_var_idIndex in the state array for this aerosol phase
jac_struct1D array of flags indicating potentially non-zero Jacobian elements. (The dependent variable should have been chosen by the calling function.)
Returns
Number of Jacobian elements flagged

Definition at line 46 of file aero_phase_solver.c.

Here is the caller graph for this function:

◆ aero_phase_get_volume__m3_m3()

void aero_phase_get_volume__m3_m3 ( ModelData model_data,
int  aero_phase_idx,
double *  state_var,
double *  volume,
double *  jac_elem 
)

Get the volume of an aerosol phase.

Parameters
model_dataPointer to the model data (state, env, aero_phase)
aero_phase_idxIndex of the aerosol phase to use in the calculation
state_varPointer to the aerosol phase on the state variable array
volumePointer to hold the aerosol phase volume ( \(\mbox{\si{\cubic\metre\per\cubic\metre}}\) or \(\mbox{\si{\cubic\metre\per particle}}\))
jac_elemWhen not NULL, a pointer to an array whose length is the number of Jacobian elements used in calculations of mass and volume of this aerosol phase returned by aero_phase_get_used_jac_elem and whose contents will be set to the partial derivatives of total phase volume by concentration \(\frac{dv}{dy_i}\) of each component species \(y_i\).

Definition at line 144 of file aero_phase_solver.c.

Here is the caller graph for this function:

◆ aero_phase_print_data()

void aero_phase_print_data ( void *  solver_data)

Print the aerosol phase data.

Parameters
solver_dataPointer to the solver data

Definition at line 210 of file aero_phase_solver.c.