calcul_asfc Subroutine

private subroutine calcul_asfc(tab_in, scal, asfc_res, omp)

Return the asfc of a surface regarding the default parameter method_asfc

Arguments

Type IntentOptional Attributes Name
real(kind=R8), intent(in), dimension(1:scal%xres, 1:scal%yres) :: tab_in

input surface

type(SCALE_SURF), intent(in) :: scal

surface characteristics

real(kind=R8), intent(out), dimension(1:2) :: asfc_res

result: asfc, adjustment factor

logical(kind=I4), intent(in) :: omp

with openmp ?


Calls

proc~~calcul_asfc~~CallsGraph proc~calcul_asfc calcul_asfc get_unit get_unit proc~calcul_asfc->get_unit proc~calcul_asfc_hermite calcul_asfc_hermite proc~calcul_asfc->proc~calcul_asfc_hermite proc~calcul_asfc_lin_all calcul_asfc_lin_all proc~calcul_asfc->proc~calcul_asfc_lin_all proc~calcul_asfc_spl_all calcul_asfc_spl_all proc~calcul_asfc->proc~calcul_asfc_spl_all proc~calcul_asfc_hermite->get_unit lmder1 lmder1 proc~calcul_asfc_hermite->lmder1 omp_get_num_procs omp_get_num_procs proc~calcul_asfc_hermite->omp_get_num_procs proc~df_boltz df_boltz proc~calcul_asfc_hermite->proc~df_boltz proc~dnq_et_i dnq_et_i proc~calcul_asfc_hermite->proc~dnq_et_i proc~dnq_xi_i dnq_xi_i proc~calcul_asfc_hermite->proc~dnq_xi_i proc~f_boltz f_boltz proc~calcul_asfc_hermite->proc~f_boltz proc~init_beta_boltz init_beta_boltz proc~calcul_asfc_hermite->proc~init_beta_boltz proc~locate locate proc~calcul_asfc_hermite->proc~locate proc~locate2 locate2 proc~calcul_asfc_hermite->proc~locate2 proc~nq_i nq_i proc~calcul_asfc_hermite->proc~nq_i proc~calcul_asfc_lin_all->lmder1 proc~calcul_aire calcul_aire proc~calcul_asfc_lin_all->proc~calcul_aire proc~calcul_asfc_lin_all->proc~df_boltz proc~calcul_asfc_lin_all->proc~f_boltz proc~calcul_asfc_lin_all->proc~init_beta_boltz proc~calcul_asfc_lin_all->proc~locate db2ink db2ink proc~calcul_asfc_spl_all->db2ink db2val db2val proc~calcul_asfc_spl_all->db2val proc~calcul_asfc_spl_all->lmder1 proc~calcul_asfc_spl_all->proc~calcul_aire proc~calcul_asfc_spl_all->proc~df_boltz proc~calcul_asfc_spl_all->proc~f_boltz proc~calcul_asfc_spl_all->proc~init_beta_boltz proc~calcul_asfc_spl_all->proc~locate proc~dn_i dn_i proc~dnq_et_i->proc~dn_i proc~n_i n_i proc~dnq_et_i->proc~n_i proc~dnq_xi_i->proc~dn_i proc~dnq_xi_i->proc~n_i proc~nq_i->proc~n_i

Source Code

   subroutine calcul_asfc(tab_in, scal, asfc_res, omp)
   !================================================================================================
   !! Return the *asfc* of a surface regarding the default parameter *method_asfc*
   implicit none
   type(SCALE_SURF), intent(in )                                      :: scal     !! *surface characteristics*
   real   (kind=R8), intent(in ), dimension(1:scal%xres, 1:scal%yres) :: tab_in   !! *input surface*
   real   (kind=R8), intent(out), dimension(1:2)                      :: asfc_res !! *result: asfc, adjustment factor*
   logical(kind=I4), intent(in )                                      :: omp      !! *with openmp ?*

      if (out_lin) call get_unit(unit_out_lin)
      if (out_spl) call get_unit(unit_out_spl)

      select case(method_asfc)
         case(lin_all)
            call calcul_asfc_lin_all(tab_in, scal, asfc_res)
         case(spl_all)
            call calcul_asfc_spl_all(tab_in, scal, asfc_res)
         case(hermite)
            call calcul_asfc_hermite(tab_in, scal, asfc_res, omp)
         case default
            stop 'no valid method'
      endselect

   return
   endsubroutine calcul_asfc