ORB5  v4.9.4
interfacesolverinorb5 Module Reference

Functions/Subroutines

subroutine initnewsolverinorb5 (nx, ny, nz, degree, nfilt1, nfilt2, deltan, nsel_poisson, dm_, xmin, xmax, ymin, ymax, a, nphip, nsel_ampere, nsel_control_variate, inner_BC)
 Initialize the new solver in ORB5. More...
 
subroutine backsolve_rhs_f (rhs_f, globalk, matnum)
 
subroutine backsolve_mass_f (rhs_f, globalk)
 
subroutine multiply_mass_f (arr_f, globalk)
 Multiply by mass matrix arr_f = masmat(globalk) * arr_f. More...
 
subroutine destroynewsolver ()
 

Variables

integer, save nx_
 
integer, save ny_
 
integer, save nm_
 
integer, save degree_
 
integer, save nfilt
 
integer, save tgt_cart
 
integer, save kloc
 
logical, save force_no_polarization
 
logical, save force_no_adiabatic
 
logical, save force_no_zonal
 
logical, save lapl_boundary_terms
 
integer me_assembly
 
integer tgt_assembly
 
integer nvp_assembly
 
integer multi_matrix
 
integer inner_bc_
 
type(mpi_comm) comm_assembly
 

Detailed Description

Author
Julien dominski

Function/Subroutine Documentation

◆ backsolve_mass_f()

subroutine interfacesolverinorb5::backsolve_mass_f ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  globalk 
)
+ Here is the caller graph for this function:

◆ backsolve_rhs_f()

subroutine interfacesolverinorb5::backsolve_rhs_f ( complex, dimension(:), intent(inout)  rhs_f,
integer, intent(in)  globalk,
integer, intent(in)  matnum 
)
+ Here is the caller graph for this function:

◆ destroynewsolver()

subroutine interfacesolverinorb5::destroynewsolver
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initnewsolverinorb5()

subroutine interfacesolverinorb5::initnewsolverinorb5 ( integer, intent(in)  nx,
integer, intent(in)  ny,
integer, intent(in)  nz,
integer, intent(in)  degree,
integer, intent(in)  nfilt1,
integer, intent(in)  nfilt2,
integer, intent(in)  deltan,
integer, intent(in)  nsel_poisson,
integer, intent(in)  dm_,
real, intent(in)  xmin,
real, intent(in)  xmax,
real, intent(in)  ymin,
real, intent(in)  ymax,
double precision, intent(in)  a,
integer, intent(in)  nphip,
integer, intent(in)  nsel_ampere,
integer, intent(in)  nsel_control_variate,
integer, intent(in)  inner_BC 
)

Initialize the new solver in ORB5.

Parameters
[in]nxNumber of intervals in radial direction
[in]nyNumber of intervals in poloidal direction
[in]nzNumber of intervals in toroidal direction
[in]degreeBsplines degree (cubic = 4)
[in]nfilt1Toroidal mode number
[in]nfilt2Toroidal mode number
[in]deltanToroidal mode number
[in]dm_Number of fields aligned mode: nm=1+2*dm
[in]nsel_poissonWhich model
[in]nsel_ampereWhich model (0=ES, 1=EM, 2=EM)
[in]nsel_control_variateWhich control variate for EM
[in]inner_bcWhich boundary condition for the radial inner edge
[in]xminBox size (annulus xmin>0)
[in]xmaxBox size
[in]yminBox size
[in]ymaxBox size
[in]aMinor radius
[in]nphipNumber of mode per cpu, from ORB5
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ multiply_mass_f()

subroutine interfacesolverinorb5::multiply_mass_f ( complex, dimension(:), intent(inout)  arr_f,
integer, intent(in)  globalk 
)

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

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

Variable Documentation

◆ comm_assembly

type(mpi_comm) interfacesolverinorb5::comm_assembly

◆ degree_

integer, save interfacesolverinorb5::degree_

◆ force_no_adiabatic

logical, save interfacesolverinorb5::force_no_adiabatic

◆ force_no_polarization

logical, save interfacesolverinorb5::force_no_polarization

◆ force_no_zonal

logical, save interfacesolverinorb5::force_no_zonal

◆ inner_bc_

integer interfacesolverinorb5::inner_bc_

◆ kloc

integer, save interfacesolverinorb5::kloc

◆ lapl_boundary_terms

logical, save interfacesolverinorb5::lapl_boundary_terms

◆ me_assembly

integer interfacesolverinorb5::me_assembly

◆ multi_matrix

integer interfacesolverinorb5::multi_matrix

◆ nfilt

integer, save interfacesolverinorb5::nfilt

◆ nm_

integer, save interfacesolverinorb5::nm_

◆ nvp_assembly

integer interfacesolverinorb5::nvp_assembly

◆ nx_

integer, save interfacesolverinorb5::nx_

◆ ny_

integer, save interfacesolverinorb5::ny_

◆ tgt_assembly

integer interfacesolverinorb5::tgt_assembly

◆ tgt_cart

integer, save interfacesolverinorb5::tgt_cart