Module to set a realistic solar atmosphere, using tabulated density and temperature profiles (see mod_atmosphere_curves), in Cartesian geometries only.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public, | allocatable | :: | h_interp(:) | interpolated heights from atmosphere tables |
||
real(kind=dp), | public, | allocatable | :: | T_interp(:) | interpolated temperatures from atmosphere tables |
||
real(kind=dp), | public, | allocatable | :: | nh_interp(:) | interpolated numberdensity from atmosphere tables |
||
real(kind=dp), | public, | allocatable | :: | dT_interp(:) | derivative of interpolated temperature with respect to height |
||
integer, | public | :: | nbpoints | amount of points used for interpolation, defaults to ncool |
|||
real(kind=dp), | public, | allocatable | :: | rho_values(:) | integrated density profile |
||
real(kind=dp), | public | :: | unit_length | ||||
real(kind=dp), | public | :: | unit_time | ||||
real(kind=dp), | public | :: | unit_magneticfield |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Default profile for the solar gravitational field
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Sets density derivative using the differential equation to ensure force balance, instead of relying on numerical differentiation.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | x |
Sets the density, temperature, gravity and magnetic field attributes of the respective fields to a realistic solar atmosphere profile. This routine first interpolates the temperature and numberdensity table at n_interp resolution, then solves the following ODE for the density: using a fifth order Runge-Kutta method. If the optional argument save_to is provided then the density profiles are saved to that file, which can be loaded back in on subsequent runs through the optional argument load_from. The integration is done over the entire table, the curve is sampled on the Gaussian grid, meaning that grid variations can all use the same result.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(settings_t), | intent(inout) | :: | settings | |||
type(background_t), | intent(inout) | :: | background | |||
type(physics_t), | intent(inout) | :: | physics | |||
integer, | intent(in), | optional | :: | n_interp | points used for interpolation, defaults to 4000 if not present |
Interpolates the atmospheric tables to the desired resolution. The temperature derivative is obtained numerically.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(settings_t), | intent(in) | :: | settings |