hmap_eval_gij_aux Function

public function hmap_eval_gij_aux(sf, qL1, qL2, qL3, q1, q2, qR1, qR2, qR3, xv) result(g_ab)

evaluate sum_ij (qL_i (G_ij(q_G)) qR_j) ,, where qL=(dX^1/dalpha,dX^2/dalpha ,dzeta/dalpha) and qR=(dX^1/dbeta,dX^2/dbeta ,dzeta/dbeta) and dzeta_dalpha then known to be either 0.0 for ds and dtheta and 1.0 for dzeta INFO: default routine that can be overwritten by specific hmap class, not using additional hmap-dependent auxiliary variables, but calling the pointwise routine eval_gij

Type Bound

c_hmap

Arguments

Type IntentOptional Attributes Name
class(c_hmap), intent(in) :: sf
real(kind=wp), intent(in) :: qL1
real(kind=wp), intent(in) :: qL2
real(kind=wp), intent(in) :: qL3
real(kind=wp), intent(in) :: q1
real(kind=wp), intent(in) :: q2
real(kind=wp), intent(in) :: qR1
real(kind=wp), intent(in) :: qR2
real(kind=wp), intent(in) :: qR3
class(c_hmap_auxvar), intent(in) :: xv

Return Value real(kind=wp)


Calls

proc~~hmap_eval_gij_aux~~CallsGraph proc~hmap_eval_gij_aux c_hmap%hmap_eval_gij_aux eval_gij eval_gij proc~hmap_eval_gij_aux->eval_gij

Called by

proc~~hmap_eval_gij_aux~~CalledByGraph proc~hmap_eval_gij_aux c_hmap%hmap_eval_gij_aux proc~evaluate_metric_derivs evaluate_metric_derivs proc~evaluate_metric_derivs->proc~hmap_eval_gij_aux proc~get_boozer_sinterp t_sfl_boozer%Get_Boozer_sinterp proc~get_boozer_sinterp->proc~hmap_eval_gij_aux proc~hmap_eval_gij_aux_all c_hmap%hmap_eval_gij_aux_all proc~hmap_eval_gij_aux_all->proc~hmap_eval_gij_aux proc~lambda_solve Lambda_solve proc~lambda_solve->proc~hmap_eval_gij_aux proc~buildtransform_sfl t_transform_sfl%BuildTransform_SFL proc~buildtransform_sfl->proc~get_boozer_sinterp proc~get_boozer get_boozer proc~get_boozer->proc~get_boozer_sinterp proc~init_la_from_solution Init_LA_from_Solution proc~init_la_from_solution->proc~lambda_solve proc~initsolutionmhd3d t_functional_mhd3d%InitSolutionMHD3D proc~initsolutionmhd3d->proc~init_la_from_solution proc~initsolution InitSolution proc~initsolution->proc~initsolutionmhd3d proc~rungvec rungvec proc~rungvec->proc~initsolutionmhd3d proc~start_rungvec start_rungvec proc~start_rungvec->proc~rungvec program~gvec GVEC program~gvec->proc~rungvec

Source Code

FUNCTION hmap_eval_gij_aux( sf ,qL1,qL2,qL3,q1,q2,qR1,qR2,qR3,xv) RESULT(g_ab)
  IMPLICIT NONE
!-----------------------------------------------------------------------------------------------------------------------------------
! INPUT VARIABLES
  CLASS(c_hmap), INTENT(IN) :: sf
  REAL(wp)     , INTENT(IN) :: qL1,qL2,qL3
  REAL(wp)     , INTENT(IN) :: q1,q2
  REAL(wp)     , INTENT(IN) :: qR1,qR2,qR3
  CLASS(c_hmap_auxvar),INTENT(IN) :: xv
!-----------------------------------------------------------------------------------------------------------------------------------
! OUTPUT VARIABLES
  REAL(wp)                  :: g_ab
!===================================================================================================================================
  g_ab=sf%eval_gij((/qL1,qL2,qL3/),(/q1,q2,xv%zeta/),(/qR1,qR2,qR3/))
END FUNCTION hmap_eval_gij_aux