timestep_LSODE
Module
Description
$Id$
Timestepping routine corresponding to the use of LSODE to solve chemistry. The transport equations are solved as usual using RK methods but the chemistry ODEs are separated and solved implicitly using LSODE either following a sequential (1 chemistry step) or symmetric (2 chemistry steps) splitting scheme.
** AUTOMATIC CPARAM.INC GENERATION ************************ CPARAM logical, parameter :: lcourant_dt = .true. ***********************************************************
Quick access
- Variables:
a21,a31,a32,advance_substeps,after_substep_sum_time,b1,b2,b3,b4,beta_hat,c21,c31,c32,c41,c42,c43,calc_pencils_sub_cycle,dt_alpha_ts,dt_beta_hat,dt_decrease,dt_increase,dt_major,e1,e2,e3,e4,errcon,errdf,errmax,errmaxs,f1,farr,farraymin,gam,grow,itter,maxtry,ode,ode_timestep_first,ode_timestep_second,pde_energy_only,rk3,rkck,rkck3,rkl_coeff,safety,shrnk,split_update,stiff,substeps,swap,update_after_substep- Routines:
Needed modules
cdata: $Id$lsodeforchemistry: $Id$
Variables
- timestep/after_substep_sum_time [real,public/optional/default=0.0]
Subroutines and functions
- subroutine timestep/initialize_timestep()
Coefficients for up to order 3.
- subroutine timestep/time_step(f, df, p)
Runge Kutta advance, accurate to order itorder. At the moment, itorder can be 1, 2, or 3.
2-apr-01/axel: coded
14-sep-01/axel: moved itorder to cdata
- Parameters:
- Use :
borderprofiles(border_quenching()),equ,mpicomm(mpiallreduce_max(),mpi_comm_pencil()),particles_main,shear(advance_shear()),special(special_after_timestep())- Call to:
pde_chemistry(),lsode_fc(),particles_timestep_first(),pde(),border_quenching(),particles_timestep_second(),advance_shear(),special_after_timestep()