CAMP 1.0.0
Chemistry Across Multiple Phases
aero_phase_solver.h
Go to the documentation of this file.
1/* Copyright (C) 2021 Barcelona Supercomputing Center and University of
2 * Illinois at Urbana-Champaign
3 * SPDX-License-Identifier: MIT
4 *
5 * Header file for aero_phase_solver.c
6 *
7 */
8/** \file
9 * \brief Header file for aerosol phase functions
10 */
11#ifndef AERO_PHASE_SOLVER_H
12#define AERO_PHASE_SOLVER_H
13#include "camp_common.h"
14
15/* Public aerosol phase functions*/
16
17/* Solver functions */
18int aero_phase_get_used_jac_elem(ModelData *model_data, int aero_phase_idx,
19 int state_var_id, bool *jac_struct);
20void aero_phase_get_mass__kg_m3(ModelData *model_data, int aero_phase_idx,
21 double *state_var, double *mass, double *MW,
22 double *jac_elem_mass, double *jac_elem_MW);
23void aero_phase_get_volume__m3_m3(ModelData *model_data, int aero_phase_idx,
24 double *state_var, double *volume,
25 double *jac_elem);
26void *aero_phase_find(ModelData *model_data, int int_aero_phase_idx);
27void aero_phase_print_data(void *solver_data);
28
29/* Setup functions */
30void aero_phase_add_condensed_data(int n_int_param, int n_float_param,
31 int *int_param, double *float_param,
32 void *solver_data);
33
34#endif
void aero_phase_print_data(void *solver_data)
Print the aerosol phase data.
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.
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_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.
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_find(ModelData *model_data, int int_aero_phase_idx)
Header file for common constants and structures.