V3FIT
|
Contains module pchelms. More...
Go to the source code of this file.
Modules | |
module | pchelms |
This file solves the helmholtz equation to set inital fields that match vmec and vacuum currents from the vector potential. Initial vector potential on the edge is supplied by the BMW code. | |
Functions/Subroutines | |
subroutine | pchelms::run_pchelms |
Run the pchelms code to solve for inital jbsup values. | |
subroutine | pchelms::curla_pchelms (Asubsmnf, Asubumnf, Asubvmnf, |
Compute real-space components of contravariant jac*B^i on half radial grid from curl(A). More... | |
subroutine | pchelms::curlb_pchelms (ksupsmnf, ksupumnf, ksupvmnf, asubsmnf, |
Compute real-space components of contravariant jac*J^i on full radial grid from curl(B). More... | |
subroutine | pchelms::cyl2vmec_a (A_r, A_p, A_z, cA_s, cA_u, cA_v) |
Convert cylindical vector potential to contravariant components. More... | |
subroutine | pchelms::init_a (cA_s, cA_u, cA_v, A_s, A_u, A_v, parity) |
Initialize vector potential. More... | |
subroutine | pchelms::init_f (Fsupsmn, Fsupumn, Fsupvmn, jcurrumn, jcurrvmn) |
Initialize expected currents. More... | |
subroutine | pchelms::compare_current (Fsupumn, Fsupvmn, jcurrumn, jcurrvmn) |
Compare Curl(Curl(A)) with the expected VMEC and vacuum currents. More... | |
subroutine | pchelms::dump_a (js, iunit) |
Write out vector potential to file. More... | |
subroutine | pchelms::boundaryconditions (Fsupsmn, Fsupumn, Fsupvmn, iparity) |
Apply boundary conditions. More... | |
subroutine | pchelms::gmres_pchelms |
Setup and run GMRES solver for the helmholtz problem. More... | |
subroutine | pchelms::matvec_pchelms (p, Ap, ndim) |
Serial callback function for MatVec GMRES routine. More... | |
subroutine | pchelms::matvec_par_pchelms (ploc, Ap, nloc) |
Parallel callback function for MatVec GMRES routine. More... | |
subroutine | pchelms::getnlforce_pchelms (xcstate, fsq_nl, bnorm) |
Non linear force callback. More... | |
Variables | |
logical, parameter, private | pchelms::l_asedge = .TRUE. |
Controls if the edge Aubs values are evolved or fixed. More... | |
integer, private | pchelms::nsmin |
integer, private | pchelms::nsmax |
integer, private | pchelms::ns_match |
logical, private | pchelms::linit |
logical, private | pchelms::lhessian |
real(dp), private | pchelms::bnorm = -1 |
real(dp), private | pchelms::line_bu |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsupsijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsupuijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsupvijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsubsijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsubuijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::bsubvijh |
real(dp), dimension(:,:,:), allocatable, private | pchelms::jacobmnch |
real(dp), dimension(:,:,:), allocatable, private | pchelms::jacobmnsh |
Contains module pchelms.
Definition in file pchelms.f90.