CAMP 1.0.0
Chemistry Across Multiple Phases
Data Types | Modules | Macros | Functions/Subroutines
sub_model_PDFiTE.F90 File Reference

The camp_sub_model_PDFiTE module. More...

Go to the source code of this file.

Data Types

interface  camp_sub_model_pdfite::sub_model_pdfite_t
 Generic test reaction data type. More...
 

Modules

module  camp_sub_model_pdfite
 The sub_model_PDFiTE_t type and associated functions.
 

Macros

#define NUM_PHASE_   this%condensed_data_int(1)
 
#define GAS_WATER_ID_   this%condensed_data_int(2)
 
#define NUM_ION_PAIRS_   this%condensed_data_int(3)
 
#define TOTAL_INT_PARAM_   this%condensed_data_int(4)
 
#define TOTAL_FLOAT_PARAM_   this%condensed_data_int(5)
 
#define NUM_INT_PROP_   5
 
#define NUM_REAL_PROP_   0
 
#define NUM_ENV_PARAM_   1
 
#define PHASE_ID_(x)   this%condensed_data_int(NUM_INT_PROP_+x)
 
#define PAIR_INT_PARAM_LOC_(x)   this%condensed_data_int(NUM_INT_PROP_+NUM_PHASE_+x)
 
#define PAIR_FLOAT_PARAM_LOC_(x)   this%condensed_data_int(NUM_INT_PROP_+NUM_PHASE_+NUM_ION_PAIRS_+x)
 
#define ION_PAIR_ACT_ID_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x))
 
#define NUM_CATION_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+1)
 
#define NUM_ANION_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+2)
 
#define CATION_ID_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+3)
 
#define ANION_ID_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+4)
 
#define NUM_INTER_(x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5)
 
#define JAC_WATER_ID_(p, x)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+p)
 
#define JAC_CATION_ID_(p, x, y)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+NUM_PHASE_+(p-1)*NUM_ION_PAIRS_+y)
 
#define JAC_ANION_ID_(p, x, y)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+NUM_ION_PAIRS_)*NUM_PHASE_+(p-1)*NUM_ION_PAIRS_+y)
 
#define NUM_B_(x, y)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+y)
 
#define INTER_SPEC_ID_(x, y)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+NUM_INTER_(x)+y)
 
#define INTER_SPEC_LOC_(x, y)   this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+2*(NUM_INTER_(x))+y)
 
#define CATION_MW_(x)   this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x))
 
#define ANION_MW_(x)   this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+1)
 
#define CATION_N_(x)   this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+2)
 
#define ANION_N_(x)   this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+3)
 
#define MIN_RH_(x, y)   this%condensed_data_real(INTER_SPEC_LOC_(x,y))
 
#define MAX_RH_(x, y)   this%condensed_data_real(INTER_SPEC_LOC_(x,y)+1)
 
#define B_Z_(x, y, z)   this%condensed_data_real(INTER_SPEC_LOC_(x,y)+1+z)
 

Functions/Subroutines

type(sub_model_pdfite_t) function, pointer camp_sub_model_pdfite::constructor ()
 Constructor for activity reaction.
 
subroutine camp_sub_model_pdfite::initialize (this, aero_rep_set, aero_phase_set, chem_spec_data)
 Initialize the reaction data, validating component data and loading any required information into the condensed data arrays for use during solving.
 
elemental subroutine camp_sub_model_pdfite::finalize (this)
 Finalize the reaction.
 
real(kind=dp) function camp_sub_model_pdfite::priority (this)
 Return a real number representing the priority of the sub model calculations. Low priority sub models may use the results of higher priority sub models. Lower numbers indicate higher priority.
 

Detailed Description

The camp_sub_model_PDFiTE module.

Definition in file sub_model_PDFiTE.F90.

Macro Definition Documentation

◆ ANION_ID_

#define ANION_ID_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+4)

◆ ANION_MW_

#define ANION_MW_ (   x)    this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+1)

◆ ANION_N_

#define ANION_N_ (   x)    this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+3)

◆ B_Z_

#define B_Z_ (   x,
  y,
 
)    this%condensed_data_real(INTER_SPEC_LOC_(x,y)+1+z)

◆ CATION_ID_

#define CATION_ID_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+3)

◆ CATION_MW_

#define CATION_MW_ (   x)    this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x))

◆ CATION_N_

#define CATION_N_ (   x)    this%condensed_data_real(PAIR_FLOAT_PARAM_LOC_(x)+2)

◆ GAS_WATER_ID_

#define GAS_WATER_ID_   this%condensed_data_int(2)

◆ INTER_SPEC_ID_

#define INTER_SPEC_ID_ (   x,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+NUM_INTER_(x)+y)

◆ INTER_SPEC_LOC_

#define INTER_SPEC_LOC_ (   x,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+2*(NUM_INTER_(x))+y)

◆ ION_PAIR_ACT_ID_

#define ION_PAIR_ACT_ID_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x))

◆ JAC_ANION_ID_

#define JAC_ANION_ID_ (   p,
  x,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+NUM_ION_PAIRS_)*NUM_PHASE_+(p-1)*NUM_ION_PAIRS_+y)

◆ JAC_CATION_ID_

#define JAC_CATION_ID_ (   p,
  x,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+NUM_PHASE_+(p-1)*NUM_ION_PAIRS_+y)

◆ JAC_WATER_ID_

#define JAC_WATER_ID_ (   p,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+p)

◆ MAX_RH_

#define MAX_RH_ (   x,
 
)    this%condensed_data_real(INTER_SPEC_LOC_(x,y)+1)

◆ MIN_RH_

#define MIN_RH_ (   x,
 
)    this%condensed_data_real(INTER_SPEC_LOC_(x,y))

◆ NUM_ANION_

#define NUM_ANION_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+2)

◆ NUM_B_

#define NUM_B_ (   x,
 
)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5+(1+2*NUM_ION_PAIRS_)*NUM_PHASE_+y)

◆ NUM_CATION_

#define NUM_CATION_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+1)

◆ NUM_ENV_PARAM_

#define NUM_ENV_PARAM_   1

◆ NUM_INT_PROP_

#define NUM_INT_PROP_   5

◆ NUM_INTER_

#define NUM_INTER_ (   x)    this%condensed_data_int(PAIR_INT_PARAM_LOC_(x)+5)

◆ NUM_ION_PAIRS_

#define NUM_ION_PAIRS_   this%condensed_data_int(3)

◆ NUM_PHASE_

#define NUM_PHASE_   this%condensed_data_int(1)

◆ NUM_REAL_PROP_

#define NUM_REAL_PROP_   0

◆ PAIR_FLOAT_PARAM_LOC_

#define PAIR_FLOAT_PARAM_LOC_ (   x)    this%condensed_data_int(NUM_INT_PROP_+NUM_PHASE_+NUM_ION_PAIRS_+x)

◆ PAIR_INT_PARAM_LOC_

#define PAIR_INT_PARAM_LOC_ (   x)    this%condensed_data_int(NUM_INT_PROP_+NUM_PHASE_+x)

◆ PHASE_ID_

#define PHASE_ID_ (   x)    this%condensed_data_int(NUM_INT_PROP_+x)

◆ TOTAL_FLOAT_PARAM_

#define TOTAL_FLOAT_PARAM_   this%condensed_data_int(5)

◆ TOTAL_INT_PARAM_

#define TOTAL_INT_PARAM_   this%condensed_data_int(4)