| | |
|
a | |
|
algebra |
|
| | |
|
b | |
|
band_matrices |
|
|
blocking |
Module containing blocking information |
| | |
|
c | |
|
charmanip |
This module contains several useful routines to manipule character strings |
|
chebyshev |
|
|
chebyshev_polynoms_mod |
|
|
communications |
This module contains the different MPI communicators used in MagIC. |
|
constants |
module containing constants and parameters used in the code. |
|
cosine_transform_even |
|
|
cosine_transform_odd |
This module contains the built-in type I discrete Cosine Transforms. This implementation is based on Numerical Recipes and FFTPACK. This only works for ``n_r_max-1 = 2**a 3**b 5**c``, with a,b,c integers.... |
|
courant_mod |
This module handles the computation of Courant factors on grid space. It then checks whether the timestep size needs to be modified. |
| | |
|
d | |
|
dense_matrices |
|
|
dirk_schemes |
This module defines the type_dirk which inherits from the abstract type_tscheme. It actually implements all the routine required to time-advance an diagonally implicit Runge-Kutta scheme. It makes use |
|
dtb_mod |
This module contains magnetic field stretching and advection terms plus a separate omega-effect. It is used for movie output.... |
| | |
|
f | |
|
fft |
This module contains the native subroutines used to compute FFT's. They are based on the FFT99 package from Temperton: http://www.cesm.ucar.edu/models/cesm1.2/cesm/cesmBbrowser/html_code/cam/fft99.F90.html |
|
fft_fac_mod |
|
|
fields |
This module contains all the fields used in MagIC in the hybrid (LM,r) space as well as their radial derivatives. It defines both the LM-distributed arrays and the R-distributed arrays.... |
|
fields_average_mod |
This module is used when one wants to store time-averaged quantities |
|
fieldslast |
This module contains all the work arrays of the previous time-steps needed to time advance the code. They are needed in the time-stepping scheme.... |
|
finite_differences |
This module is used to calculate the radial grid when finite differences are requested |
| | |
|
g | |
|
general_arrays_mod |
|
|
geos |
This module is used to compute z-integrated diagnostics such as the degree of geostrophy or the separation of energies between inside and outside the tangent cylinder. This makes use of a local Simpson's method. This also |
|
getdlm_mod |
This module is used to calculate the lengthscales. It computes both the integral lengthscale and the peak of the poloidal energy. It also stores the radial profiles of these lengthscales.... |
|
graphout_mod |
This module contains the subroutines that store the 3-D graphic files. |
| | |
|
h | |
|
horizontal_data |
Module containing functions depending on longitude and latitude plus help arrays depending on degree and order |
| | |
|
i | |
|
init_fields |
This module is used to construct the initial solution. |
|
integration |
Radial and geostrophic integration functions |
| | |
|
k | |
|
kinetic_energy |
This module handles the computation of kinetic energy and the time-averaged radial profiles. |
| | |
|
l | |
|
lmloop_mod |
|
|
lmmapping |
|
|
logic |
Module containing the logicals that control the run |
| | |
|
m | |
|
magnetic_energy |
This module handles the computation and the writing of the diagnostic files related to magnetic energy: e_mag_oc.TAG, e_mag_ic.TAG, dipole.TAG, eMagR.TAG |
|
mean_sd |
This module contains a small type that simply handles two arrays (mean and SD) This type is used for time-averaged outputs (and their standard deviations). |
|
mem_alloc |
This little module is used to estimate the global memory allocation used in MagIC |
|
movie_data |
|
|
mpi_transp_mod |
This is an abstract class that will be used to define MPI transposers The actual implementation is deferred to either point-to-point (MPI_Isend and MPI_IRecv) communications or all-to-all (MPI_AlltoAll) |
|
multistep_schemes |
This module defines the type_multistep which inherits from the abstract type_tscheme. It actually implements all the routine required to time-advance an IMEX multistep scheme such as CN/AB2, SBDF(2,3,4), |
| | |
|
n | |
|
namelists |
Read and print the input namelist |
|
nonlinear_bcs |
|
|
nonlinear_lm_mod |
This module is used to finish the assembly of the nonlinear terms in :math:`(\ell,m)` space. Derivatives along :math:`\theta` and :math:`\phi` are handled using recurrence relations.... |
|
num_param |
Module containing numerical and control parameters |
| | |
|
o | |
|
out_coeff |
This module contains the subroutines that calculate the Bcmb files, the [B|V|T]_coeff_r files and the [B|V|T]_lmr files |
|
out_dtb_frame |
This module handles the final assembly of the arrays produced to store the movies that diagnose the different contributions of the induction equations. It produces arrays that are stored in the corresponding |
|
out_movie |
This module handles the storage of the relevant diagnostics in the public array frames(*) and then the writing of the corresponding movie files |
|
out_movie_ic |
This module handles the computation of the inner core contribution to the movie files. Relevant outputs are stored in frames(*) from the movie.f90 module.... |
|
outmisc_mod |
This module contains several subroutines that can compute and store various informations: helicity (helicity.TAG), heat transfer (heat.TAG), phase field (phase.TAG) and North/South hemisphericity of energies (hemi.TAG) |
|
outpar_mod |
This module is used to compute several time-averaged radial profiles: fluxes, boundary layers, etc. |
|
output_data |
This module contains the parameters for output control |
|
output_mod |
This module handles the calls to the different output routines. |
|
outrot |
This module handles the writing of several diagnostic files related to the rotation: angular momentum (AM.TAG), drift (drift.TAG), inner core and mantle rotations.... |
|
outto_mod |
This module handles the writing of TO-related outputs: zonal force balance and z-integrated terms. This is a re-implementation of the spectral method used up to MagIC 5.10, which formerly relies on calculation of Plm on the cylindrical grid.... |
| | |
|
p | |
|
parallel_mod |
This module contains the blocking information |
|
parallel_solvers |
This module contains the routines that are used to solve linear banded problems with R-distributed arrays. |
|
physical_parameters |
Module containing the physical parameters |
|
plms_theta |
|
|
power |
This module handles the writing of the power budget |
|
precalculations |
This module is used to handle some pre-calculations of constants (moment of inertia, mass, volumes), determine the timesteps for I/O and fix boundary values for temperature/entropy and chemical composition |
|
precision_mod |
This module controls the precision used in MagIC |
|
probe_mod |
Module for artificial sensors to compare time series of physical data with experiments. Probes are located in a radially symmetrical way |
| | |
|
r | |
|
radial_data |
This module defines the MPI decomposition in the radial direction. |
|
radial_der |
Radial derivatives functions |
|
radial_der_even |
|
|
radial_functions |
This module initiates all the radial functions (transport properties, density, temperature, cheb transforms, etc.) |
|
radial_scheme |
This is an abstract type that defines the radial scheme used in MagIC |
|
radial_spectra |
|
|
radialloop |
|
|
readcheckpoints |
This module contains the functions that can help reading and mapping of the restart files |
|
real_matrices |
|
|
riter_mod |
This module actually handles the loop over the radial levels. It contains the spherical harmonic transforms and the operations on the arrays in physical space.... |
|
riteration |
This module is used to define an abstract class for the radial loop |
|
rms |
This module contains the calculation of the RMS force balance and induction terms. |
|
rms_helpers |
This module contains several useful subroutines required to compute RMS diagnostics |
| | |
|
s | |
|
sht |
|
|
shtransforms |
This module is used when the native built-in SH transforms of MagIC are used. Those are much slower than SHTns, and are not recommanded for production runs! |
|
special |
This module contains all variables for the case of an imposed IC dipole, an imposed external magnetic field and a special boundary forcing to excite inertial modes |
|
spectra |
This module handles the computation and the writing of spectra. It handles both 2-D spectra in (r,l) and (r,m) spaces and usual spectra integrated over all radii in (l) or (m) spaces.... |
|
start_fields |
This module is used to set-up the initial starting fields. They can be obtained by reading a starting checkpoint file or by setting some starting conditions. |
|
step_time_mod |
|
|
storecheckpoints |
This module contains several subroutines that can be used to store the checkpoint_#.tag files |
| | |
|
t | |
|
time_array |
This module defines two types that are defined to store the implicit/explicit terms at the different sub-stage/step. |
|
time_schemes |
This module defines an abstract class type_tscheme which is employed for the time advance of the code. |
|
timing |
This module contains functions that are used to measure the time spent. |
|
torsional_oscillations |
This module contains information for TO calculation and output |
|
truncation |
This module defines the grid points and the truncation |
| | |
|
u | |
|
updateb_mod |
This module handles the time advance of the magnetic field potentials b and aj as well as the inner core counterparts b_ic and aj_ic. It contains the computation of the implicit terms and the linear |
|
updatephi_mod |
This module handles the time advance of the phase field phi. It contains the computation of the implicit terms and the linear solves.... |
|
updates_mod |
This module handles the time advance of the entropy s. It contains the computation of the implicit terms and the linear solves.... |
|
updatewp_mod |
This module handles the time advance of the poloidal potential w and the pressure p. It contains the computation of the implicit terms and the linear solves. |
|
updatewps_mod |
This module handles the time advance of the poloidal potential w, the pressure p and the entropy s in one single matrix per degree. It contains the computation of the implicit terms and the linear |
|
updatexi_mod |
This module handles the time advance of the chemical composition xi. It contains the computation of the implicit terms and the linear solves.... |
|
updatez_mod |
This module handles the time advance of the toroidal potential z It contains the computation of the implicit terms and the linear solves.... |
|
useful |
This module contains several useful routines. |