ORB5  v4.9.4
solver_mod Module Reference

Functions/Subroutines

subroutine, public initsolvermodule (me_assembly, tgt_assembly, color, nx_, nz_, nw_, wmax_, kdx_, em_kdx_, dm_, electromagnetic_, em_control_variate_, pullback_, fieldaligned_, longwavelength_, na_half_rho_ref_, phase_factor_, isnfiltlocal_, isnfiltlocalysolved_, NBmodeslocal_, nfiltlocal_, navgmax_, testcase_, internal_boundary_, pade_, multi_matrix_, inner_BC_, lapl_boundary_terms_)
 
subroutine, public destroysolvermodule ()
 
subroutine, public assemblyrhs_tests (rhs_f, nmat, nqx, nqy)
 Project analytical field on B-splines. More...
 
subroutine, public assemblyrhs_antenna (rhs_f, nmat, nqx, nqy, phase_shift, sprof, prof, nprof)
 Project antenna's analytical field on B-splines, adapted from assemblyRHS_tests. More...
 
subroutine, public assemblymatrix (nqx, nqy)
 
subroutine assemblymassmatrix (nqx, nqy)
 
subroutine, public assemblyboltzman (isp, nqx, nqy, remove_trap_contribution)
 
subroutine, public assemblyboltzman_zf (isp, nqx, nqy, remove_trap_contribution, oldAvgJac)
 Assemble the ZF contribution of the adiabatic electrons to the LHS matrix. More...
 
subroutine, public assemblyboltzmannpade (isp, nqx, nqy, remove_trap_contribution)
 Assembly of the pade approximation for adiabatic electrons without zonal flows. More...
 
subroutine, public assemblyboltzmannpade_zf (isp, nqx, nqy, remove_trap_contribution)
 Computes Pade correction to the adiabatic electron model for zonal flows. More...
 
subroutine, public assemblypoldrift_longwavelength_fourier (isp, nqx, nqy)
 
subroutine, public assemblypadematforrhs (isp, nqx, nqy)
 
subroutine domainofintegrationextended (imin, isp, smin, smax, ixmin_int, ixmax_int)
 
subroutine, public assemblypoldrift_arbitrary_wavelength_fourier (isp, nqx, nqy, iymin, iymax)
 
logical function fieldmodefilter (i, m, n)
 
subroutine, public assemblylhsfinalize ()
 Boundary conditions, and merge of different matrices. More...
 
subroutine, public finalizematrix ()
 Boundary conditions, and merge of different matrices. More...
 
subroutine backsolvephi (rhs_in, sol, sol_dft)
 Input is the RHS project on BSplines. More...
 
subroutine backsolvephi_ (rhs_f, sol_dft)
 
subroutine, public backsolve_rhs_f (rhs_f, nmat, matnum)
 Input is the RHS in fourier and the toroidal mode number to backsolve. More...
 
subroutine backsolve_rhs_f_julien (rhs_f, nmat)
 
subroutine, public backsolve_rhs_f_multi (rhs_f, nmat, matnum)
 
subroutine, public backsolve_mass_f (arr_f, out_f, nmat)
 Backsolve any quantity with the mass matrix (diagnostics purpose) More...
 
subroutine, public multiply_mass_f (arr_f, nmat)
 Multiply by mass matrix arr_f = masmat(nmat) * arr_f. More...
 
subroutine, public backsolve_mass_s (arr_f, out_f)
 Backsolve any quantity with the mass matrix (diagnostics purpose) More...
 
subroutine, public backsolve_mass_sn (arr_, out_, nmode)
 
double precision function, public computetoroidalmasscoeff (n)
 
subroutine, public print_matrix_gbmatf (Mval, nqsmin, nx_, ny_, degree_, filename)
 
integer function getlocaltoroidalindex (n)
 
subroutine, public reduce_matrix (ierr, comm_, tgt_, me_)
 Perform a reduction by sum of the LHS. More...
 
subroutine, public broadcast_matrix (ierr, comm_, src_, me_)
 
subroutine broadcast_matrix_julien (ierr, comm_, src_, me_)
 
subroutine broadcast_matrix_multi (ierr, comm_, src_)
 
subroutine dft1d (input, output, nx, ny)
 Compute the DFT of the RHS. More...
 
subroutine dft_or_idft_cpx (input, output, nx, ny, isign)
 Compute the DFT of the RHS and divide it by the coeff m^(n). isign=-1 (=_FFTW_FORWARD) or +1 (=_FFTW_BACKWARD) More...
 
subroutine dftinverse1d (input, output, nx, ny)
 Compute the DFT of the RHS and divide it by the coeff m^(n). More...
 
subroutine dftinverse1d_rc (input, output, nx, ny)
 Compute the DFT of the RHS and divide it by the coeff m^(n). More...
 
subroutine dftinverse1d_full (input, output, nx, ny)
 Compute the DFT of the RHS and divide it by the coeff m^(n). More...
 
subroutine def_matrix_filter_new
 
subroutine, public copy_matrix_filter (ixmin, ixmax, n, mmmincopy)
 
subroutine reality_condition (v_dft, ny, ny2)
 
subroutine print_rhs_debug (rhs, n)
 Print rhs array. More...
 
subroutine print_phi_debug (phi, n)
 Print phi array. More...
 
subroutine print_matrix_zpbmat (Mname, M, n)
 Print zpbmat matrix. More...
 
subroutine init_multi_matrix (lapl_boundary_terms)
 

Variables

integer na_eff_lim
 
integer testcase
 
integer jj
 
double precision, parameter eqsign =-1d0
 
integer kd
 Number of diagonals. More...
 
integer em_kd
 Number of diagonals for EM matrix. More...
 
integer kdx
 Number of radial diagonals i-i' < kdx. More...
 
integer em_kdx
 Number of radial diagonals i-i' for EM matrices< kdx. More...
 
type(zpbmat), dimension(:), allocatable lhs
 array of nz/2 matrices More...
 
type(zgbmat), dimension(:), allocatable lhspade
 
type(zgbmat), dimension(:), allocatable lhspadesym
 General banded matrix for Padé implementation (non symmetric implementation) More...
 
logical, dimension(:), allocatable isnfiltlocalysolved
 array of nz/2 logical which tell if the matrix is local to this cpu More...
 
logical, dimension(:), allocatable, public isnfiltlocal
 array of nz/2 logical which tell if the matrix is local to this cpu More...
 
integer, public nbmodeslocal
 number of modes local to the cpu =(1|0)+nphip/deltan More...
 
integer, dimension(:), allocatable nfiltlocal
 array of local toroidal mode numbers (which require an assembled matrix) More...
 
type(zpbmat), dimension(:), allocatable masmat
 
type(pbmat) masmat_s
 
type(zpbmat), dimension(:), allocatable padmat
 
complex, parameter pzero =0d0
 
complex, parameter pone =1d0
 
integer, dimension(:,:), allocatable mmin
 
integer, dimension(:,:), allocatable mmax
 
integer, dimension(:,:), allocatable mmin_
 
integer dm
 
integer nm_min
 
integer nm_max
 
integer nm
 
integer nm2
 
integer nw
 
real wmax
 
integer ixmin
 
integer ixmax
 
real dw
 
integer bcs_left
 
integer bcs_right
 
logical phase_factor
 
integer curproc
 
integer fieldaligned
 
integer internal_boundary
 
integer, public multi_matrix
 
integer inner_bc
 
logical longwavelength
 
logical pade
 
logical electromagnetic
 
logical em_control_variate
 
logical pullback
 
logical efluid
 
integer species_ref
 
integer na_half_rho_ref
 
real bref
 
real tref
 
real nref
 
real omegaref
 
real cref
 
real rhoref
 
real mref
 
real qref
 
real bnorm
 
real lnorm
 
real, public tim_dyad_cumul
 
integer tgt_proc
 

Detailed Description

Author
Julien Dominski
Date
November 2014 x is the radial coordinate. y is the poloidal. z is along the axis of symetry of the cylinder.

Function/Subroutine Documentation

◆ assemblyboltzman()

subroutine, public solver_mod::assemblyboltzman ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
logical, intent(in)  remove_trap_contribution 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblyboltzman_zf()

subroutine, public solver_mod::assemblyboltzman_zf ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
logical, intent(in)  remove_trap_contribution,
logical  oldAvgJac 
)

Assemble the ZF contribution of the adiabatic electrons to the LHS matrix.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblyboltzmannpade()

subroutine, public solver_mod::assemblyboltzmannpade ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
logical, intent(in)  remove_trap_contribution 
)

Assembly of the pade approximation for adiabatic electrons without zonal flows.

Author
Emmanuel Lanti (based on assemblyPadeMatForRHS (Julien Dominski))
Date
11.07.2016
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblyboltzmannpade_zf()

subroutine, public solver_mod::assemblyboltzmannpade_zf ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
logical, intent(in)  remove_trap_contribution 
)

Computes Pade correction to the adiabatic electron model for zonal flows.

Author
Emmanuel Lanti based on assemblyBoltzman_ZF (Julien Dominski)
Date
14.07.2016
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblylhsfinalize()

subroutine, public solver_mod::assemblylhsfinalize

Boundary conditions, and merge of different matrices.

Note
This may not work if using an other solver
+ Here is the caller graph for this function:

◆ assemblymassmatrix()

subroutine solver_mod::assemblymassmatrix ( integer, intent(in)  nqx,
integer, intent(in)  nqy 
)
+ Here is the caller graph for this function:

◆ assemblymatrix()

subroutine, public solver_mod::assemblymatrix ( integer, intent(in)  nqx,
integer, intent(in)  nqy 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblypadematforrhs()

subroutine, public solver_mod::assemblypadematforrhs ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy 
)
+ Here is the caller graph for this function:

◆ assemblypoldrift_arbitrary_wavelength_fourier()

subroutine, public solver_mod::assemblypoldrift_arbitrary_wavelength_fourier ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
integer, intent(in)  iymin,
integer, intent(in)  iymax 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblypoldrift_longwavelength_fourier()

subroutine, public solver_mod::assemblypoldrift_longwavelength_fourier ( integer, intent(in)  isp,
integer, intent(in)  nqx,
integer, intent(in)  nqy 
)
+ Here is the caller graph for this function:

◆ assemblyrhs_antenna()

subroutine, public solver_mod::assemblyrhs_antenna ( complex, dimension(:), intent(out)  rhs_f,
integer, intent(in)  nmat,
integer, intent(in)  nqx,
integer, intent(in)  nqy,
real, intent(in)  phase_shift,
real, dimension(:), intent(in), allocatable  sprof,
real, dimension(:), intent(in), allocatable  prof,
integer, intent(in)  nprof 
)

Project antenna's analytical field on B-splines, adapted from assemblyRHS_tests.

Author
N. Ohana
Date
07/2018
See also
Matrix and right-hand-side for field solver
Parameters
[out]rhs_fDFT of \(\hat b_{ijk}=\int J_{s\chi\varphi}(s,\chi)f(s,\chi,\varphi)\Lambda_i(s)\Lambda_j(\chi)\Lambda_k(\varphi)~ds~d\chi~d\varphi\)
[in]nmatToroidal mode number
[in]nqxNumber of quadrature points in each radial cell
[in]nqyNumber of quadrature points in each poloidal cell
[in]phase_shiftModes phase shift
[in]sprofRadial positions of antenna profile, used if nsel_profile==interp
[in]profValues of antenna profile at s positions, used if nsel_profile==interp
[in]nprofNumber of points of antenna profile, used if nsel_profile==interp
  1. Initialize quadrature points
  2. Initialize FFTW
  3. B-spline DFTs
  4. Loop over quadrature points
  1. Loop over radial intervals
  1. Evaluate radial profile
  2. Jacobian DFT
  3. Sum over antenna's modes
  4. Accumulate contributions
  5. Deallocate FFTW buffers
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ assemblyrhs_tests()

subroutine, public solver_mod::assemblyrhs_tests ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  nmat,
integer, intent(in)  nqx,
integer, intent(in)  nqy 
)

Project analytical field on B-splines.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ backsolve_mass_f()

subroutine, public solver_mod::backsolve_mass_f ( complex, dimension(:), intent(in)  arr_f,
complex, dimension(:), intent(out)  out_f,
integer, intent(in)  nmat 
)

Backsolve any quantity with the mass matrix (diagnostics purpose)

+ Here is the caller graph for this function:

◆ backsolve_mass_s()

subroutine, public solver_mod::backsolve_mass_s ( real, dimension(:), intent(in)  arr_f,
real, dimension(:), intent(out)  out_f 
)

Backsolve any quantity with the mass matrix (diagnostics purpose)

+ Here is the caller graph for this function:

◆ backsolve_mass_sn()

subroutine, public solver_mod::backsolve_mass_sn ( real, dimension(:), intent(in)  arr_,
real, dimension(:), intent(out)  out_,
integer, intent(in)  nmode 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ backsolve_rhs_f()

subroutine, public solver_mod::backsolve_rhs_f ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  nmat,
integer, intent(in)  matnum 
)

Input is the RHS in fourier and the toroidal mode number to backsolve.

Parameters
[in,out]rhs_fRight-hand side matrix
[in]nmatToroidal mode number \(n\)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ backsolve_rhs_f_julien()

subroutine solver_mod::backsolve_rhs_f_julien ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  nmat 
)
private
Parameters
[in,out]rhs_fRight-hand side matrix
[in]nmatToroidal mode number \(n\)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ backsolve_rhs_f_multi()

subroutine, public solver_mod::backsolve_rhs_f_multi ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  nmat,
integer, intent(in)  matnum 
)
Parameters
[in,out]rhs_fRight-hand side matrix
[in]nmatToroidal mode number \(n\)
[in]matnumwhich matrix is to be back-solved
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ backsolvephi()

subroutine solver_mod::backsolvephi ( double precision, dimension(:), intent(in)  rhs_in,
double precision, dimension(:,:), intent(inout)  sol,
double precision, dimension(:,:,:), intent(inout)  sol_dft 
)

Input is the RHS project on BSplines.

+ Here is the call graph for this function:

◆ backsolvephi_()

subroutine solver_mod::backsolvephi_ ( complex, dimension(:,:), intent(in)  rhs_f,
double precision, dimension(:,:,:), intent(inout)  sol_dft 
)
private
+ Here is the call graph for this function:

◆ broadcast_matrix()

subroutine, public solver_mod::broadcast_matrix ( integer, intent(inout)  ierr,
type(mpi_comm), intent(in)  comm_,
integer, intent(in)  src_,
integer, intent(in)  me_ 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ broadcast_matrix_julien()

subroutine solver_mod::broadcast_matrix_julien ( integer, intent(inout)  ierr,
type(mpi_comm), intent(in)  comm_,
integer, intent(in)  src_,
integer, intent(in)  me_ 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ broadcast_matrix_multi()

subroutine solver_mod::broadcast_matrix_multi ( integer, intent(inout)  ierr,
type(mpi_comm), intent(in)  comm_,
integer, intent(in)  src_ 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ computetoroidalmasscoeff()

double precision function, public solver_mod::computetoroidalmasscoeff ( integer, intent(in)  n)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ copy_matrix_filter()

subroutine, public solver_mod::copy_matrix_filter ( integer, intent(in)  ixmin,
integer, intent(in)  ixmax,
integer, intent(in)  n,
integer, dimension(:), intent(inout)  mmmincopy 
)

◆ def_matrix_filter_new()

subroutine solver_mod::def_matrix_filter_new
private
+ Here is the caller graph for this function:

◆ destroysolvermodule()

subroutine, public solver_mod::destroysolvermodule
+ Here is the caller graph for this function:

◆ dft1d()

subroutine solver_mod::dft1d ( double precision, dimension(:), intent(in)  input,
double complex, dimension(:), intent(inout)  output,
integer, intent(in)  nx,
integer, intent(in)  ny 
)
private

Compute the DFT of the RHS.

Author
Julien Dominski
+ Here is the caller graph for this function:

◆ dft_or_idft_cpx()

subroutine solver_mod::dft_or_idft_cpx ( double complex, dimension(:), intent(in)  input,
double complex, dimension(:), intent(inout)  output,
integer, intent(in)  nx,
integer, intent(in)  ny,
integer, intent(in)  isign 
)
private

Compute the DFT of the RHS and divide it by the coeff m^(n). isign=-1 (=_FFTW_FORWARD) or +1 (=_FFTW_BACKWARD)

◆ dftinverse1d()

subroutine solver_mod::dftinverse1d ( double complex, dimension(:), intent(in)  input,
double precision, dimension(:), intent(inout)  output,
integer, intent(in)  nx,
integer, intent(in)  ny 
)
private

Compute the DFT of the RHS and divide it by the coeff m^(n).

+ Here is the caller graph for this function:

◆ dftinverse1d_full()

subroutine solver_mod::dftinverse1d_full ( double complex, dimension(:), intent(in)  input,
double precision, dimension(:), intent(inout)  output,
integer, intent(in)  nx,
integer, intent(in)  ny 
)
private

Compute the DFT of the RHS and divide it by the coeff m^(n).

◆ dftinverse1d_rc()

subroutine solver_mod::dftinverse1d_rc ( double complex, dimension(:), intent(in)  input,
double precision, dimension(:), intent(inout)  output,
integer, intent(in)  nx,
integer, intent(in)  ny 
)
private

Compute the DFT of the RHS and divide it by the coeff m^(n).

+ Here is the call graph for this function:

◆ domainofintegrationextended()

subroutine solver_mod::domainofintegrationextended ( integer, intent(in)  imin,
integer, intent(in)  isp,
real, intent(inout)  smin,
real, intent(inout)  smax,
integer, intent(inout)  ixmin_int,
integer, intent(inout)  ixmax_int 
)
+ Here is the caller graph for this function:

◆ fieldmodefilter()

logical function solver_mod::fieldmodefilter ( integer, intent(in)  i,
integer, intent(in)  m,
integer, intent(in)  n 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ finalizematrix()

subroutine, public solver_mod::finalizematrix

Boundary conditions, and merge of different matrices.

Note
This may not work if using an other solver
+ Here is the caller graph for this function:

◆ getlocaltoroidalindex()

integer function solver_mod::getlocaltoroidalindex ( integer, intent(in)  n)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_multi_matrix()

subroutine solver_mod::init_multi_matrix ( logical, intent(in)  lapl_boundary_terms)
+ Here is the caller graph for this function:

◆ initsolvermodule()

subroutine, public solver_mod::initsolvermodule ( integer, intent(in)  me_assembly,
integer, intent(in)  tgt_assembly,
integer, intent(in)  color,
integer, intent(in)  nx_,
integer, intent(in)  nz_,
integer, intent(in)  nw_,
double precision, intent(in)  wmax_,
integer, intent(in)  kdx_,
integer, intent(in)  em_kdx_,
integer, intent(in)  dm_,
logical, intent(in)  electromagnetic_,
logical, intent(in)  em_control_variate_,
logical, intent(in)  pullback_,
integer, intent(in)  fieldaligned_,
logical, intent(in)  longwavelength_,
integer, intent(in)  na_half_rho_ref_,
logical, intent(in)  phase_factor_,
logical, dimension(0:nz_/2), intent(in)  isnfiltlocal_,
logical, dimension(0:nz_/2), intent(in)  isnfiltlocalysolved_,
integer, intent(in)  NBmodeslocal_,
integer, dimension(1:nbmodeslocal_), intent(in)  nfiltlocal_,
integer, intent(in)  navgmax_,
integer, intent(in)  testcase_,
integer, intent(in)  internal_boundary_,
logical, intent(in)  pade_,
integer, intent(in)  multi_matrix_,
integer, intent(in)  inner_BC_,
logical, intent(in)  lapl_boundary_terms_ 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ multiply_mass_f()

subroutine, public solver_mod::multiply_mass_f ( complex, dimension(:), intent(inout)  arr_f,
integer, intent(in)  nmat 
)

Multiply by mass matrix arr_f = masmat(nmat) * arr_f.

Author
N. Ohana
Parameters
[in,out]arr_fArray in Fourier representation
[in]nmatToroidal mode number

◆ print_matrix_gbmatf()

subroutine, public solver_mod::print_matrix_gbmatf ( complex, dimension(:,:), intent(in)  Mval,
integer, dimension(:), intent(in)  nqsmin,
integer, intent(in)  nx_,
integer, intent(in)  ny_,
integer, intent(in)  degree_,
character(*), intent(in)  filename 
)

◆ print_matrix_zpbmat()

subroutine solver_mod::print_matrix_zpbmat ( character(3)  Mname,
type(zpbmat), intent(in)  M,
integer, intent(in)  n 
)

Print zpbmat matrix.

◆ print_phi_debug()

subroutine solver_mod::print_phi_debug ( double complex, dimension(:), intent(in)  phi,
integer, intent(in)  n 
)

Print phi array.

◆ print_rhs_debug()

subroutine solver_mod::print_rhs_debug ( double complex, dimension(:), intent(in)  rhs,
integer, intent(in)  n 
)
private

Print rhs array.

◆ reality_condition()

subroutine solver_mod::reality_condition ( complex, dimension(:), intent(inout)  v_dft,
integer, intent(in)  ny,
integer, intent(in)  ny2 
)
private
+ Here is the caller graph for this function:

◆ reduce_matrix()

subroutine, public solver_mod::reduce_matrix ( integer, intent(inout)  ierr,
type(mpi_comm), intent(in)  comm_,
integer, intent(in)  tgt_,
integer, intent(in)  me_ 
)

Perform a reduction by sum of the LHS.

Author
Julien Dominski
Parameters
[in,out]ierrError flag
[in]comm_Communicator
[in]tgt_Rank of the target process to which send the reduction
[in]me_Rank of the current process
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ bcs_left

integer solver_mod::bcs_left
private

◆ bcs_right

integer solver_mod::bcs_right
private

◆ bnorm

real solver_mod::bnorm
private

◆ bref

real solver_mod::bref
private

◆ cref

real solver_mod::cref
private

◆ curproc

integer solver_mod::curproc
private

◆ dm

integer solver_mod::dm
private

◆ dw

real solver_mod::dw
private

◆ efluid

logical solver_mod::efluid
private

◆ electromagnetic

logical solver_mod::electromagnetic
private

◆ em_control_variate

logical solver_mod::em_control_variate
private

◆ em_kd

integer solver_mod::em_kd
private

Number of diagonals for EM matrix.

◆ em_kdx

integer solver_mod::em_kdx
private

Number of radial diagonals i-i' for EM matrices< kdx.

◆ eqsign

double precision, parameter solver_mod::eqsign =-1d0
private

◆ fieldaligned

integer solver_mod::fieldaligned
private

◆ inner_bc

integer solver_mod::inner_bc
private

◆ internal_boundary

integer solver_mod::internal_boundary
private

◆ isnfiltlocal

logical, dimension(:), allocatable, public solver_mod::isnfiltlocal

array of nz/2 logical which tell if the matrix is local to this cpu

◆ isnfiltlocalysolved

logical, dimension(:), allocatable solver_mod::isnfiltlocalysolved
private

array of nz/2 logical which tell if the matrix is local to this cpu

◆ ixmax

integer solver_mod::ixmax
private

◆ ixmin

integer solver_mod::ixmin
private

◆ jj

integer solver_mod::jj
private

◆ kd

integer solver_mod::kd
private

Number of diagonals.

◆ kdx

integer solver_mod::kdx
private

Number of radial diagonals i-i' < kdx.

◆ lhs

type(zpbmat), dimension(:), allocatable solver_mod::lhs
private

array of nz/2 matrices

◆ lhspade

type(zgbmat), dimension(:), allocatable solver_mod::lhspade
private

◆ lhspadesym

type(zgbmat), dimension(:), allocatable solver_mod::lhspadesym
private

General banded matrix for Padé implementation (non symmetric implementation)

◆ lnorm

real solver_mod::lnorm
private

◆ longwavelength

logical solver_mod::longwavelength
private

◆ masmat

type(zpbmat), dimension(:), allocatable solver_mod::masmat
private

◆ masmat_s

type(pbmat) solver_mod::masmat_s
private

◆ mmax

integer, dimension(:,:), allocatable solver_mod::mmax
private

◆ mmin

integer, dimension(:,:), allocatable solver_mod::mmin
private

◆ mmin_

integer, dimension(:,:), allocatable solver_mod::mmin_
private

◆ mref

real solver_mod::mref
private

◆ multi_matrix

integer, public solver_mod::multi_matrix

◆ na_eff_lim

integer solver_mod::na_eff_lim
private

◆ na_half_rho_ref

integer solver_mod::na_half_rho_ref
private

◆ nbmodeslocal

integer, public solver_mod::nbmodeslocal

number of modes local to the cpu =(1|0)+nphip/deltan

◆ nfiltlocal

integer, dimension(:), allocatable solver_mod::nfiltlocal
private

array of local toroidal mode numbers (which require an assembled matrix)

◆ nm

integer solver_mod::nm
private

◆ nm2

integer solver_mod::nm2
private

◆ nm_max

integer solver_mod::nm_max
private

◆ nm_min

integer solver_mod::nm_min
private

◆ nref

real solver_mod::nref
private

◆ nw

integer solver_mod::nw
private

◆ omegaref

real solver_mod::omegaref
private

◆ pade

logical solver_mod::pade
private

◆ padmat

type(zpbmat), dimension(:), allocatable solver_mod::padmat
private

◆ phase_factor

logical solver_mod::phase_factor
private

◆ pone

complex, parameter solver_mod::pone =1d0
private

◆ pullback

logical solver_mod::pullback
private

◆ pzero

complex, parameter solver_mod::pzero =0d0
private

◆ qref

real solver_mod::qref
private

◆ rhoref

real solver_mod::rhoref
private

◆ species_ref

integer solver_mod::species_ref
private

◆ testcase

integer solver_mod::testcase
private

◆ tgt_proc

integer solver_mod::tgt_proc
private

◆ tim_dyad_cumul

real, public solver_mod::tim_dyad_cumul

◆ tref

real solver_mod::tref
private

◆ wmax

real solver_mod::wmax
private