particles_adsorbed

Module

Description

$Id: particles_adsorbed.f90 21950 2014-07-08 08:53:00Z jonas.kruger $

MODULE_DOC: This module takes care of the evolution of adsorbed MODULE_DOC: species on the particle surface for reactive particles

** AUTOMATIC CPARAM.INC GENERATION ************************

Declare (for generation of cparam.inc) the number of f array variables and auxiliary variables added by this module

MAUX CONTRIBUTION 0

CPARAM logical, parameter :: lparticles_adsorbed=.true.

PENCILS PROVIDED theta(nadsspec)


Quick access

Variables:

adsorbed_species_names, adsplaceholder, dpads, idiag_ads, ierr, init_adsorbed, init_surf_ads_frac, init_thco, lexperimental_adsorbed, mu_power, register_dep_ads, register_indep_ads, site_occupancy, sum_ads

Routines:

dpads_dt(), dpads_dt_pencil(), init_particles_ads(), initialize_particles_ads(), particles_ads_prepencil_calc(), particles_adsorbed_clean_up(), pencil_criteria_par_ads(), read_particles_ads_init_pars(), read_particles_ads_run_pars(), register_particles_ads(), rprint_particles_ads(), write_particles_ads_init_pars(), write_particles_ads_run_pars()

Needed modules

Variables

  • particles_adsorbed/adsorbed_species_names (50) [character,private]
  • particles_adsorbed/adsplaceholder [real,private/optional/default=0.0]
  • particles_adsorbed/dpads [real,private/optional/default=0.0]
  • particles_adsorbed/idiag_ads (*) [integer,private/allocatable]
  • particles_adsorbed/ierr [integer,private]
  • particles_adsorbed/init_adsorbed (ninit) [character,private/optional/default='nothing']
  • particles_adsorbed/init_surf_ads_frac (10) [real,private]
  • particles_adsorbed/init_thco [real,private/optional/default=0.0]
  • particles_adsorbed/lexperimental_adsorbed [logical,private/optional/default=.false.]
  • particles_adsorbed/lwrite [logical,private/optional/default=.true.]
  • particles_adsorbed/mu_power (*,*) [real,private/allocatable]
  • particles_adsorbed/register_dep_ads [private]
  • particles_adsorbed/register_indep_ads [private]
  • particles_adsorbed/site_occupancy (*) [real,private/allocatable]
  • particles_adsorbed/sum_ads [real,private]
  • particles_adsorbed/total_carbon_sites [real,private/pointer]
  • particles_adsorbed/write_outputfile [private]

Subroutines and functions

subroutine  particles_adsorbed/register_particles_ads()

this is a wrapper function for registering particle number in- and independent variables

Called from:

particles_register_modules()

Call to:

svn_id(), fatal_error(), create_ad_sol_lists(), get_reactants(), sort_compounds(), find_species(), append_npvar(), create_stoc(), create_occupancy(), sum_par_name(), calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/initialize_particles_ads(f)

Perform any post-parameter-read initialization i.e. calculate derived parameters.

29-aug-14/jonas coded

Parameters:

f (mx,my,mz,mfarray) [real]

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules()

Call to:

fatal_error(), sum_par_name(), calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/init_particles_ads(f, fp)

Initial particle surface fractions

01-sep-14/jonas: coded

Parameters:
Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init()

Call to:

fatal_error(), sum_par_name(), calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/pencil_criteria_par_ads()

All pencils that the Particles_adsorbed module depends on are specified here.

01-sep-14/jonas: coded

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), read_all_particles_init_pars(), read_all_particles_run_pars(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles()

Call to:

sum_par_name(), calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/dpads_dt(f, df, fp, dfp, ineargrid)

Evolution of particle surface fractions.

01-sep-14/jonas: coded

Parameters:
  • f (mx,my,mz,mfarray) [real]

  • df (mx,my,mz,mvar) [real]

  • fp (mpar_loc,mparray) [real,in]

  • dfp (mpar_loc,mpvar) [real]

  • ineargrid (mpar_loc,3) [integer]

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_pencil_interdep(), particles_calc_pencils(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), particles_pde(), read_all_particles_init_pars(), read_all_particles_run_pars(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles()

Call to:

sum_par_name(), calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/dpads_dt_pencil(f, df, fp, dfp, p, ineargrid)

Evolution of particle surface fractions

03-sep-14/jonas: coded

Parameters:
  • f (mx,my,my,mfarray) [real]

  • df (mx,my,mz,mvar) [real]

  • fp (mpar_loc,mparray) [real,in]

  • dfp (mpar_loc,mpvar) [real,inout]

  • p [pencil_case]

  • ineargrid (mpar_loc,3) [integer]

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_pencil_interdep(), particles_calc_pencils(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), particles_pde(), particles_pde_pencil(), read_all_particles_init_pars(), read_all_particles_run_pars(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles()

Call to:

calc_get_mod_surf_area(), get_adsorbed_chemistry()

subroutine  particles_adsorbed/read_particles_ads_init_pars(iomsg)
Parameters:

iomsg [character,out]

Use :

file_io (parallel_unit())

subroutine  particles_adsorbed/write_particles_ads_init_pars(unit)
Parameters:

unit [integer,in]

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_pencil_interdep(), particles_calc_pencils(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), particles_pde(), particles_pde_pencil(), particles_calc_pencil_diags(), particles_pde_blocks(), read_all_particles_init_pars(), write_all_particles_init_pars(), read_all_particles_run_pars(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles()

subroutine  particles_adsorbed/read_particles_ads_run_pars(iomsg)
Parameters:

iomsg [character,out]

Use :

file_io (parallel_unit())

subroutine  particles_adsorbed/write_particles_ads_run_pars(unit)
Parameters:

unit [integer,in]

Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_pencil_interdep(), particles_calc_pencils(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), particles_pde(), particles_pde_pencil(), particles_calc_pencil_diags(), particles_pde_blocks(), read_all_particles_init_pars(), write_all_particles_init_pars(), read_all_particles_run_pars(), write_all_particles_run_pars(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles()

subroutine  particles_adsorbed/rprint_particles_ads(lreset[, lwrite])

Read and register print parameters relevant for particles coverage fraction.

06-oct-14/jonas: adapted

Parameters:
  • lreset [logical]

  • lwrite [logical]

Use :

diagnostics

Called from:

particles_register_modules(), particles_rprint_list()

subroutine  particles_adsorbed/particles_ads_prepencil_calc(f)

28-aug-14/jonas+nils: coded

Parameters:

f (mx,my,mz,mfarray) [real,inout]

subroutine  particles_adsorbed/particles_adsorbed_clean_up()
Called from:

particles_register_modules(), particles_rprint_list(), particles_initialize_modules(), particles_init(), particles_finalize(), particles_read_snapshot(), particles_write_snapshot(), particles_write_dsnapshot(), particles_write_pdim(), particles_write_block(), particles_write_rmv(), particles_timestep_first(), particles_timestep_second(), split_update_particles(), particles_load_balance(), particles_boundconds(), particles_pencil_criteria(), particles_pencil_interdep(), particles_calc_pencils(), particles_calc_selfpotential(), particles_before_boundary(), particles_special_bfre_bdary(), particles_special_after_dtsub(), particles_pde(), particles_pde_pencil(), particles_calc_pencil_diags(), particles_pde_blocks(), read_all_particles_init_pars(), write_all_particles_init_pars(), read_all_particles_run_pars(), write_all_particles_run_pars(), particles_powersnap(), get_slices_particles(), write_dim_particles(), write_snapshot_particles(), read_snapshot_particles(), particles_stochastic()