polymer
Module
Description
$Id$
This modules deals with all aspects of polymers.
** 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 :: lpolymer = .true.
MVAR CONTRIBUTION 6 MAUX CONTRIBUTION 1
PENCILS PROVIDED poly(3,3);trp;fr;frC(3,3) PENCILS PROVIDED u_dot_gradC(3,3);Cijk(3,3,3); del2poly(3,3); PENCILS PROVIDED div_frC(3); divC(3); grad_fr(3)
Quick access
- Variables:
calc_pencils_fene_p,calc_pencils_oldroyd_b,cdotgradut,enum_poly_algo,enum_poly_model,eta_poly,fenep_l,frmax_local,gradudotc,idiag_frmax,idiag_polytrm,initpoly,lpoly_diffusion,lpolyadvect,lpolyback,lupw_poly,mu_poly,pamp,poly_algo,poly_model,rod_dirn,simple_dpoly_dt,tau_poly,tau_poly1- Routines:
calc_diagnostics_polymer(),calc_pencils_polymer(),calc_polymer_after_boundary(),dpoly_dt(),get_slices_polymer(),init_poly(),initialize_polymer(),pencil_criteria_polymer(),pencil_interdep_polymer(),read_polymer_init_pars(),read_polymer_run_pars(),register_polymer(),rprint_polymer(),write_polymer_init_pars(),write_polymer_run_pars()
Needed modules
cdata: $Id$general(keep_compiler_quiet(),transpose_mn()): $Id$messages: $Id$sub: $Id$
Variables
- polymer/calc_pencils_fene_p [private]
- polymer/calc_pencils_oldroyd_b [private]
- polymer/enum_poly_algo [integer,private/optional/default=0]
- polymer/enum_poly_model [integer,private/optional/default=0]
- polymer/eta_poly [real,private/optional/default=0.0]
- polymer/fenep_l [real,private/optional/default=0.0]
- polymer/frmax_local [real,private/optional/default=1.0]
- polymer/id_block_persistent [integer,private/parameter/optional/default=2000]
- polymer/id_record_dt_gw [integer,private/parameter/optional/default=350]
- polymer/id_record_eps_rkf [integer,private/parameter/optional/default=331]
- polymer/id_record_forcing_location [integer,private/parameter/optional/default=270]
- polymer/id_record_forcing_torus [integer,private/parameter/optional/default=272]
- polymer/id_record_forcing_tsforce [integer,private/parameter/optional/default=271]
- polymer/id_record_hydro_ampl [integer,private/parameter/optional/default=286]
- polymer/id_record_hydro_avec_gb [integer,private/parameter/optional/default=289]
- polymer/id_record_hydro_location [integer,private/parameter/optional/default=285]
- polymer/id_record_hydro_phase1 [integer,private/parameter/optional/default=281]
- polymer/id_record_hydro_phase2 [integer,private/parameter/optional/default=282]
- polymer/id_record_hydro_qvec_gb [integer,private/parameter/optional/default=288]
- polymer/id_record_hydro_tphase [integer,private/parameter/optional/default=280]
- polymer/id_record_hydro_tsforce [integer,private/parameter/optional/default=284]
- polymer/id_record_hydro_wavenumber [integer,private/parameter/optional/default=287]
- polymer/id_record_ism_bold_mass [integer,private/parameter/optional/default=252]
- polymer/id_record_ism_pos_next_old [integer,private/parameter/optional/default=251]
- polymer/id_record_ism_snrs [integer,private/parameter/optional/default=259]
- polymer/id_record_ism_snrs_old [integer,private/parameter/optional/default=1002]
- polymer/id_record_ism_t_cluster [integer,private/parameter/optional/default=261]
- polymer/id_record_ism_t_next_old [integer,private/parameter/optional/default=250]
- polymer/id_record_ism_t_next_sni [integer,private/parameter/optional/default=253]
- polymer/id_record_ism_t_next_snii [integer,private/parameter/optional/default=254]
- polymer/id_record_ism_toggle_old [integer,private/parameter/optional/default=1001]
- polymer/id_record_ism_toggle_sni [integer,private/parameter/optional/default=257]
- polymer/id_record_ism_toggle_snii [integer,private/parameter/optional/default=258]
- polymer/id_record_ism_x_cluster [integer,private/parameter/optional/default=255]
- polymer/id_record_ism_y_cluster [integer,private/parameter/optional/default=256]
- polymer/id_record_ism_z_cluster [integer,private/parameter/optional/default=260]
- polymer/id_record_iteration_number [integer,private/parameter/optional/default=100]
- polymer/id_record_magnetic_ampl [integer,private/parameter/optional/default=312]
- polymer/id_record_magnetic_phase [integer,private/parameter/optional/default=311]
- polymer/id_record_random_seeds [integer,private/parameter/optional/default=1]
- polymer/id_record_random_seeds2 [integer,private/parameter/optional/default=2]
- polymer/id_record_shear_delta_y [integer,private/parameter/optional/default=320]
- polymer/id_record_special_lnkmin0 [integer,private/parameter/optional/default=340]
- polymer/id_record_time_step [integer,private/parameter/optional/default=330]
- polymer/idiag_frmax [integer,private/optional/default=0]
DIAG_DOC: $max(f(r))$
- polymer/idiag_polytrm [integer,private/optional/default=0]
DIAG_DOC: $leftlangle Tr[C_{ij}]rightrangle$
- polymer/lpoly_diffusion [logical,private/optional/default=.false.]
- polymer/lpolyadvect [logical,private/optional/default=.true.]
- polymer/lpolyback [logical,private/optional/default=.true.]
- polymer/lupw_poly [logical,private/optional/default=.false.]
- polymer/mu_poly [real,private/optional/default=0.0]
- polymer/pamp [real,private/optional/default=1.0]
- polymer/poly_algo [character,private/optional/default='simple']
- polymer/poly_model [character,private/optional/default='oldroyd-b']
- polymer/rod_dirn (3) [real,private/optional/default=(/0.0,0.0,0.0/)]
- polymer/simple_dpoly_dt [private]
- polymer/tau_poly [real,private/optional/default=0.0]
- polymer/tau_poly1 [real,private/optional/default=1.0]
Subroutines and functions
- subroutine polymer/register_polymer()
Initialise variables.
14-Aug-08/Dhruba: coded
- Use :
- Called from:
- Call to:
svn_id(),warning(),fatal_error(),not_implemented(),symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/initialize_polymer(f)
Perform any post-parameter-read initialization. At present does nothing.
14-aug-08/dhruba: initialize polymer field
- Parameters:
f (,,*,*) [real,contiguous]
- Called from:
- Call to:
warning(),fatal_error(),not_implemented(),symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/init_poly(f)
Initialise polymer field.
14-aug-2008/dhruba: coded
- Parameters:
f (,,*,*) [real,contiguous]
- Use :
- Called from:
- Call to:
fatal_error(),not_implemented(),symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/pencil_criteria_polymer()
All pencils that the Polymer module depends on are specified here.
- Called from:
register_modules(),initialize_modules(),finalize_modules(),choose_pencils()- Call to:
not_implemented(),fatal_error(),symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/pencil_interdep_polymer(lpencil_in)
Interdependency among pencils from the Polymer module is specified here.
18-aug-2008/dhruba: coded
- Parameters:
lpencil_in (npencils) [logical]
- Called from:
register_modules(),initialize_modules(),finalize_modules(),choose_pencils()- Call to:
symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),fatal_error(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),not_implemented(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/calc_pencils_polymer(f, p)
Calculate polymer pencils. Most basic pencils should come first, as others may depend on them.
18-aug-08/dhruba: coded
- Parameters:
f (,,*,*) [real,inout,contiguous]
p [pencil_case,inout]
- Called from:
pde(),write_diagnostics(),calc_all_module_diagnostic_auxiliaries(),perform_diagnostics(),finalize_diagnostics()- Call to:
symmetrise3x3_ut2lt(),del2m3x3_sym(),trace_mn(),gijl_symmetric(),u_dot_grad_mat(),fatal_error(),div_mn_2tensor(),dot_mn_vm(),max_mn_name(),identify_bcs(),mult_matrix(),not_implemented(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/calc_diagnostics_polymer(p)
Calculates the diagnostic quantities for polymer module Most basic pencils should come first, as others may depend on them.
- Parameters:
p [pencil_case]
- Use :
- Called from:
pde(),write_diagnostics(),calc_all_module_diagnostic_auxiliaries(),register_polymer(),initialize_polymer(),init_poly(),pencil_criteria_polymer(),pencil_interdep_polymer(),calc_pencils_polymer(),dpoly_dt(),calc_diagnostics_polymer()- Call to:
max_mn_name(),identify_bcs(),mult_matrix(),not_implemented(),fatal_error(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/dpoly_dt(f, df, p)
Polymer evolution.
18-aug-08/dhruba: coded
- Parameters:
f (,,*,*) [real,contiguous]
df (,,*,*) [real,contiguous]
p [pencil_case]
- Called from:
pde(),write_diagnostics(),calc_all_module_diagnostic_auxiliaries(),perform_diagnostics(),finalize_diagnostics()- Call to:
identify_bcs(),mult_matrix(),not_implemented(),fatal_error(),max_mn(),calc_diagnostics_polymer(),kronecker_delta()
- subroutine polymer/calc_polymer_after_boundary(f)
- Parameters:
f (,,*,*) [real,contiguous]
- Called from:
pde(),write_diagnostics(),calc_all_module_diagnostic_auxiliaries(),perform_diagnostics(),finalize_diagnostics()- Call to:
- subroutine polymer/read_polymer_init_pars(iomsg)
- Parameters:
iomsg [character,out]
- Use :
- subroutine polymer/write_polymer_init_pars(unit)
- Parameters:
unit [integer,in]
- Called from:
get_datadir(),get_snapdir(),read_all_init_pars(),read_all_run_pars(),get_downpars()
- subroutine polymer/read_polymer_run_pars(iomsg)
- Parameters:
iomsg [character,out]
- Use :
- subroutine polymer/write_polymer_run_pars(unit)
- Parameters:
unit [integer,in]
- Called from:
get_datadir(),get_snapdir(),read_all_init_pars(),read_all_run_pars(),get_downpars()
- subroutine polymer/get_slices_polymer(f, slices)
Write slices for animation of polymeric variables.
26-jul-06/tony: coded
- Parameters:
f (,,*,*) [real,contiguous]
slices [slice_data]
- subroutine polymer/rprint_polymer(lreset[, lwrite])
Reads and registers print parameters relevant for polymer.
8-aug-10/dhruba: aped from pscalar
- Parameters:
lreset [logical]
lwrite [logical]
- Use :
- Called from:
register_modules(),initialize_modules(),finalize_modules(),choose_pencils(),rprint_list()