noshock
Module
Description
$Id$
This module calculates a divergence of u based shock finding profile used by shock viscosities and diffusion terms.
- eg. the total voscosity is taken as:
nu_total = nu + nu_shock*dx*smooth(max5(-(div u))))
where dx*smooth(max5(-(div u)))) is the profile calculated here in.
** 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 :: lshock = .false.
MVAR CONTRIBUTION 0 MAUX CONTRIBUTION 0
PENCILS PROVIDED shock; gshock(3); shock_perp; gshock_perp(3)
Quick access
- Variables:
con_bias,div_scaling,div_threshold,dt_div_pow,dtfactor,idiag_gshockmax,idiag_shockm,idiag_shockmax,idiag_shockmax_perp,idiag_shockmin,idiag_shockmx,idiag_shockmy,idiag_shockmz,ishock_max,ivel,ivelx,ively,ivelz,lcommunicate_uu,lconvergence_bias,lconvergence_only,lfix_re_mesh,lforce_periodic_shockviscosity,lgauss_integral,lgauss_integral_comm_uu,lgaussian_smooth,lmax_shock,lrewrite_shock_boundary,lshock_first,lshock_linear,lshock_max3_interp,lshock_max5,lshock_modulation_z,lwith_extreme_div,maximum_shock,shock_div_pow,shock_divu_perp,shock_linear,shock_max3,shock_max3_interp,shock_smooth,smooth_factor,smooth_shock,tmp,wave_speed,width_shock,z_shock- Routines:
bcshock_per_x(),bcshock_per_y(),bcshock_per_z(),calc_diagnostics_shock(),calc_pencils_shock(),calc_shock_profile(),calc_shock_profile_external(),calc_shock_profile_internal(),calc_shock_profile_simple(),get_slices_shock(),initialize_shock(),pencil_criteria_shock(),pencil_interdep_shock(),read_shock_run_pars(),register_shock(),rprint_shock(),scale_and_chop(),scale_and_chop_internalboundary(),shock_before_boundary(),shock_divu_farray(),shock_divu_pencil(),shock_divu_perp_pencil(),shock_max3_farray(),shock_max3_pencil(),shock_max3_pencil_interp(),shock_max5(),shock_max5_pencil(),shock_smooth_cube_diamond7(),shock_smooth_farray(),shock_smooth_octagon7(),shock_smooth_pencil(),write_shock_run_pars()
Needed modules
cdata: $Id$general(keep_compiler_quiet()): $Id$messages: $Id$
Variables
Subroutines and functions
- subroutine shock/register_shock()
19-nov-02/tony: coded 24-jan-05/tony: modified from visc_shock.f90
identify version number
- Call to:
- subroutine shock/initialize_shock(f)
- Parameters:
f (,,*,*) [real,contiguous]
- Call to:
- subroutine shock/read_shock_run_pars(iomsg)
- Parameters:
iomsg [character,out]
- Call to:
- subroutine shock/write_shock_run_pars(unit)
- Parameters:
unit [integer,in]
- Call to:
- subroutine shock/rprint_shock(lreset[, lwrite])
- Parameters:
lreset [logical]
lwrite [logical]
- Call to:
- subroutine shock/get_slices_shock(f, slices)
Write slices for animation of Shock variables.
26-jun-06/tony: dummy
- Parameters:
f (,,*,*) [real,contiguous]
slices [slice_data]
- Call to:
- subroutine shock/pencil_criteria_shock()
All pencils that the Shock module depends on are specified here.
20-11-04/anders: coded 24-jan-05/tony: modified from visc_shock.f90
- Call to:
- subroutine shock/pencil_interdep_shock(lpencil_in)
Interdependency among pencils from the Viscosity module is specified here.
20-11-04/anders: coded 24-jan-05/tony: modified from visc_shock.f90
- Parameters:
lpencil_in (npencils) [logical]
- Call to:
- subroutine shock/calc_pencils_shock(f, p)
Calculate Viscosity pencils. Most basic pencils should come first, as others may depend on them.
20-11-04/anders: coded 24-jan-05/tony: modified from visc_shock.f90
- Parameters:
f (,,*,*) [real,in,contiguous]
p [pencil_case,inout]
- Call to:
- subroutine shock/calc_diagnostics_shock(p)
- Parameters:
p [pencil_case]
- Call to:
- subroutine shock/calc_shock_profile_simple(f)
calculate viscous heating term for right hand side of entropy equation
23-nov-02/tony: coded 24-jan-05/tony: modified from visc_shock.f90
- Parameters:
f (,,*,*) [real,contiguous]
- Call to:
- subroutine shock/calc_shock_profile(f)
calculate viscous heating term for right hand side of entropy equation
23-nov-02/tony: coded 24-jan-05/tony: modified from visc_shock.f90
- Parameters:
f (,,*,*) [real,contiguous]
- Call to:
- subroutine shock/shock_before_boundary(f)
- Parameters:
f (,,*,*) [real,contiguous]
- Call to: