particles_adaptation
Module
Description
$Id: particles_coagulation.f90 19828 2012-11-27 09:58:06Z kalle.jansson.89 $
This modules takes care of adapting the number of particles in a grid cell to a desired value. This module is based on an original idea by Jacob Trier Frederiksen and was developed by Anders Johansen and Chao-Chin Yang.
EXPERIMENTAL MODULE - PLEASE DO NOT USE WITHOUT CONTACTING THE AUTHORS
** AUTOMATIC CPARAM.INC GENERATION ************************ Declare (for generation of cparam.inc) the number of f array variables and auxiliary variables added by this module
CPARAM logical, parameter :: lparticles_adaptation= .true.
MVAR CONTRIBUTION 0 MAUX CONTRIBUTION 0
Quick access
- Variables:
adaptation_method,dvp_split_kick,dvpj_kick,find_velocity_pair,iparmass,merge_particles_in_cell_ngp,new_population_interpolated,new_population_random,npar_max,npar_min,npar_target,random_cell,random_normal,split_particles_in_cell,statistics- Routines:
initialize_particles_adaptation(),particles_adaptation_pencils(),read_particles_adapt_run_pars(),rprint_particles_adaptation(),write_particles_adapt_run_pars()
Needed modules
cdata: $Id$general(keep_compiler_quiet(),notanumber()): $Id$messages: $Id$particles_cdata: $Id$particles_map: $Id$particles_sub: $Id$
Variables
- particles_adaptation/adaptation_method [character,private/optional/default='random']
- particles_adaptation/dvp_split_kick [real,private/optional/default=0.0]
- particles_adaptation/dvpj_kick [real,private/optional/default=0.0]
- particles_adaptation/find_velocity_pair [private]
- particles_adaptation/iparmass [integer,private/optional/default=0]
- particles_adaptation/merge_particles_in_cell_ngp [private]
- particles_adaptation/new_population_interpolated [private]
- particles_adaptation/new_population_random [private]
- particles_adaptation/npar_max [integer,private/optional/default=16]
- particles_adaptation/npar_min [integer,private/optional/default=4]
- particles_adaptation/npar_target [integer,private/optional/default=8]
- particles_adaptation/random_cell [private]
- particles_adaptation/random_normal [private]
- particles_adaptation/split_particles_in_cell [private]
- particles_adaptation/statistics [private]
Subroutines and functions
- subroutine particles_adaptation/initialize_particles_adaptation(f)
Perform any post-parameter-read initialization i.e. calculate derived parameters.
03-apr-13/anders: coded
- Parameters:
- Use :
- Called from:
particles_register_modules(),particles_rprint_list(),particles_initialize_modules()- Call to:
fatal_error(),fatal_error_local(),fatal_error_local_collect(),ppcvq(),interpolate_linear()
- subroutine particles_adaptation/particles_adaptation_pencils(f, fp, dfp, ipar, ineargrid)
Adapt the number of particles in each grid cell to a desired value, under conservation of mass and momentum.
14-may-13/ccyang+anders: coded
- Parameters:
- Use :
- 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(),read_all_particles_init_pars(),read_all_particles_run_pars(),write_dim_particles(),write_snapshot_particles(),read_snapshot_particles()- Call to:
fatal_error_local(),ppcvq(),fatal_error(),fatal_error_local_collect(),interpolate_linear()
- subroutine particles_adaptation/read_particles_adapt_run_pars(iomsg)
- Parameters:
iomsg [character,out]
- Use :
- Call to:
- subroutine particles_adaptation/write_particles_adapt_run_pars(unit)
- Parameters:
unit [integer,in]
- Call to:
- subroutine particles_adaptation/rprint_particles_adaptation(lreset[, lwrite])
Read and register diagnostic parameters.
03-apr-13/anders: adapted
- Parameters:
lreset [logical]
lwrite [logical]
- Call to: