hmap_cyl_eval_dxdq Function

public function hmap_cyl_eval_dxdq(sf, q_in, q_vec) result(dxdq_qvec)

evaluate total derivative of the mapping sum k=1,3 (dx(1:3)/dq^k) q_vec^k, where dx(1:3)/dq^k, k=1,2,3 is evaluated at q_in=(X^1,X^2,zeta) ,

Type Bound

t_hmap_cyl

Arguments

Type IntentOptional Attributes Name
class(t_hmap_cyl), intent(in) :: sf
real(kind=wp), intent(in) :: q_in(3)
real(kind=wp), intent(in) :: q_vec(3)

Return Value real(kind=wp), (3)


Called by

proc~~hmap_cyl_eval_dxdq~~CalledByGraph proc~hmap_cyl_eval_dxdq t_hmap_cyl%hmap_cyl_eval_dxdq proc~hmap_cyl_test hmap_cyl_test proc~hmap_cyl_test->proc~hmap_cyl_eval_dxdq proc~hmap_cyl_init_params hmap_cyl_init_params proc~hmap_cyl_init_params->proc~hmap_cyl_test interface~t_hmap_cyl t_hmap_cyl interface~t_hmap_cyl->proc~hmap_cyl_init_params proc~hmap_cyl_init hmap_cyl_init interface~t_hmap_cyl->proc~hmap_cyl_init proc~hmap_cyl_init->proc~hmap_cyl_init_params

Source Code

FUNCTION hmap_cyl_eval_dxdq( sf ,q_in,q_vec) RESULT(dxdq_qvec)
! MODULES
  IMPLICIT NONE
!-----------------------------------------------------------------------------------------------------------------------------------
! INPUT VARIABLES
  CLASS(t_hmap_cyl), INTENT(IN) :: sf
  REAL(wp)         , INTENT(IN) :: q_in(3)
  REAL(wp)         , INTENT(IN) :: q_vec(3)
!-----------------------------------------------------------------------------------------------------------------------------------
! OUTPUT VARIABLES
  REAL(wp)                      :: dxdq_qvec(3)
!===================================================================================================================================
  !  dxdq_qvec=
  ! | 1  0  0        | |q_vec(1) |
  ! | 0  0  -cyl_len | |q_vec(2) |
  ! | 0  1  0        | |q_vec(3) |

dxdq_qvec = (/q_vec(1),-sf%cyl_len*q_vec(3),q_vec(2)/)

END FUNCTION hmap_cyl_eval_dxdq