![]() |
ORB5
v4.9.4
|
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 |
| 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:| 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:| 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.
Here is the call graph for this function:
Here is the caller graph for this function:| 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.
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine, public solver_mod::assemblylhsfinalize |
Boundary conditions, and merge of different matrices.
Here is the caller graph for this function:| subroutine solver_mod::assemblymassmatrix | ( | integer, intent(in) | nqx, |
| integer, intent(in) | nqy | ||
| ) |
Here is the caller graph for this function:| 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:| 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:| 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:| 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:| 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.
| [out] | rhs_f | DFT 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] | nmat | Toroidal mode number |
| [in] | nqx | Number of quadrature points in each radial cell |
| [in] | nqy | Number of quadrature points in each poloidal cell |
| [in] | phase_shift | Modes phase shift |
| [in] | sprof | Radial positions of antenna profile, used if nsel_profile==interp |
| [in] | prof | Values of antenna profile at s positions, used if nsel_profile==interp |
| [in] | nprof | Number of points of antenna profile, used if nsel_profile==interp |
Here is the call graph for this function:
Here is the caller graph for this function:| 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:| 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:| 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:| 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:| 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.
| [in,out] | rhs_f | Right-hand side matrix |
| [in] | nmat | Toroidal mode number \(n\) |
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
| [in,out] | rhs_f | Right-hand side matrix |
| [in] | nmat | Toroidal mode number \(n\) |
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine, public solver_mod::backsolve_rhs_f_multi | ( | complex, dimension(:), intent(inout) | rhs_f, |
| integer, intent(in) | nmat, | ||
| integer, intent(in) | matnum | ||
| ) |
| [in,out] | rhs_f | Right-hand side matrix |
| [in] | nmat | Toroidal mode number \(n\) |
| [in] | matnum | which matrix is to be back-solved |
Here is the call graph for this function:
Here is the caller graph for this function:| 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:
|
private |
Here is the call graph for this function:| 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:
|
private |
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Here is the call graph for this function:
Here is the caller graph for this function:| 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:| subroutine, public solver_mod::copy_matrix_filter | ( | integer, intent(in) | ixmin, |
| integer, intent(in) | ixmax, | ||
| integer, intent(in) | n, | ||
| integer, dimension(:), intent(inout) | mmmincopy | ||
| ) |
|
private |
Here is the caller graph for this function:| subroutine, public solver_mod::destroysolvermodule |
Here is the caller graph for this function:
|
private |
Compute the DFT of the RHS.
Here is the caller graph for this function:
|
private |
Compute the DFT of the RHS and divide it by the coeff m^(n). isign=-1 (=_FFTW_FORWARD) or +1 (=_FFTW_BACKWARD)
|
private |
Compute the DFT of the RHS and divide it by the coeff m^(n).
Here is the caller graph for this function:
|
private |
Compute the DFT of the RHS and divide it by the coeff m^(n).
|
private |
Compute the DFT of the RHS and divide it by the coeff m^(n).
Here is the call graph for this function:| 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:
|
private |
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine, public solver_mod::finalizematrix |
Boundary conditions, and merge of different matrices.
Here is the caller graph for this function:| 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:| subroutine solver_mod::init_multi_matrix | ( | logical, intent(in) | lapl_boundary_terms | ) |
Here is the caller graph for this function:| 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:| 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.
| [in,out] | arr_f | Array in Fourier representation |
| [in] | nmat | Toroidal mode number |
| 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 | ||
| ) |
| subroutine solver_mod::print_matrix_zpbmat | ( | character(3) | Mname, |
| type(zpbmat), intent(in) | M, | ||
| integer, intent(in) | n | ||
| ) |
Print zpbmat matrix.
| subroutine solver_mod::print_phi_debug | ( | double complex, dimension(:), intent(in) | phi, |
| integer, intent(in) | n | ||
| ) |
Print phi array.
|
private |
Print rhs array.
|
private |
Here is the caller graph for this function:| 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.
| [in,out] | ierr | Error 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:
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Number of diagonals for EM matrix.
|
private |
Number of radial diagonals i-i' for EM matrices< kdx.
|
private |
|
private |
|
private |
|
private |
| logical, dimension(:), allocatable, public solver_mod::isnfiltlocal |
array of nz/2 logical which tell if the matrix is local to this cpu
|
private |
array of nz/2 logical which tell if the matrix is local to this cpu
|
private |
|
private |
|
private |
|
private |
Number of diagonals.
|
private |
Number of radial diagonals i-i' < kdx.
|
private |
array of nz/2 matrices
|
private |
|
private |
General banded matrix for Padé implementation (non symmetric implementation)
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| integer, public solver_mod::multi_matrix |
|
private |
|
private |
| integer, public solver_mod::nbmodeslocal |
number of modes local to the cpu =(1|0)+nphip/deltan
|
private |
array of local toroidal mode numbers (which require an assembled matrix)
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| real, public solver_mod::tim_dyad_cumul |
|
private |
|
private |