hmap_RZ_eval_aux Function

public function hmap_RZ_eval_aux(sf, q1, q2, xv) result(x_out)

evaluate the mapping h (X^1,X^2,zeta) -> (x,y,z) cartesian INFO: overwrites default routine hmap_eval_aux from c_hmap.f90

Arguments

Type IntentOptional Attributes Name
class(t_hmap_RZ), intent(in) :: sf
real(kind=wp), intent(in) :: q1
real(kind=wp), intent(in) :: q2
class(c_hmap_auxvar), intent(in) :: xv

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


Source Code

FUNCTION hmap_RZ_eval_aux( sf ,q1,q2,xv) RESULT(x_out)
  IMPLICIT NONE
  !-----------------------------------------------------------------------------------------------------------------------------------
  ! INPUT VARIABLES
    CLASS(t_hmap_RZ)    ,INTENT(IN) :: sf
    REAL(wp)            ,INTENT(IN) :: q1,q2
    CLASS(c_hmap_auxvar),INTENT(IN) :: xv !only used for zeta
  !-----------------------------------------------------------------------------------------------------------------------------------
  ! OUTPUT VARIABLES
    REAL(wp)                        :: x_out(3)
  !===================================================================================================================================
    !  q= (R,Z,zeta)
    ! |x |  | R*cos(zeta) |
    ! |y |= |-R*sin(zeta) |
    ! |z |  | Z           |

    SELECT TYPE(xv)
    TYPE IS(t_hmap_RZ_auxvar)
    x_out(1:3)=(/ q1*COS(xv%zeta), &
                 -q1*SIN(xv%zeta), &
                  q2           /)
    END SELECT
  END FUNCTION hmap_RZ_eval_aux