modgvec_gvec_to_gene_c_bind Module

Module gvec_to_gene_c_bind


Uses

  • module~~modgvec_gvec_to_gene_c_bind~~UsesGraph module~modgvec_gvec_to_gene_c_bind modgvec_gvec_to_gene_c_bind iso_c_binding iso_c_binding module~modgvec_gvec_to_gene_c_bind->iso_c_binding modgvec_gvec_to_gene modgvec_gvec_to_gene module~modgvec_gvec_to_gene_c_bind->modgvec_gvec_to_gene module~modgvec_globals MODgvec_Globals module~modgvec_gvec_to_gene_c_bind->module~modgvec_globals module~modgvec_output_vtk MODgvec_Output_VTK module~modgvec_gvec_to_gene_c_bind->module~modgvec_output_vtk iso_fortran_env iso_fortran_env module~modgvec_globals->iso_fortran_env module~modgvec_output_vtk->module~modgvec_globals

Variables

Type Visibility Attributes Name Initial
integer, private, parameter :: CWP = merge(C_LONG_DOUBLE, merge(C_DOUBLE, C_FLOAT, WP.eq.selected_real_kind(15, 307)), WP.eq.selected_real_kind(33, 307))

Functions

private function get_c_string_length(s) result(nchars)

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), intent(in) :: s(*)

Return Value integer

private function get_fortran_string(s, nchars) result(f)

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), intent(in) :: s(*)
integer, intent(in) :: nchars

Return Value character(len=nchars)


Subroutines

private subroutine write_data_to_vtk_c(dim1, vecdim, nVal, NPlot, nElems, strlen, VarNames_c, Coord, Values, FileString_c) bind(c,name='write_data_to_vtk')

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), value :: dim1
integer(kind=C_INT), value :: vecdim
integer(kind=C_INT), value :: nVal
integer(kind=C_INT), intent(in) :: NPlot(dim1)
integer(kind=C_INT), value :: nElems
integer(kind=C_INT), value :: strlen
character(kind=C_CHAR, len=1), intent(in) :: VarNames_c(strlen,nVal)
real(kind=CWP), intent(in) :: Coord(vecdim,1:PRODUCT(Nplot+1),nElems)
real(kind=CWP), intent(in) :: Values(nVal,1:PRODUCT(Nplot+1),nElems)
character(kind=C_CHAR, len=1), dimension(*) :: FileString_c

public subroutine init_gvec_to_gene_c(fileName) bind(c,name='init_gvec_to_gene')

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), dimension(*) :: fileName

public subroutine gvec_to_gene_coords_c(nthet, nzeta, spos_in, theta_star_in, zeta_in, theta_out, cart_coords) bind(c,name='gvec_to_gene_coords')

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), value :: nthet
integer(kind=C_INT), value :: nzeta
real(kind=CWP), value :: spos_in
real(kind=CWP), intent(in), dimension(nthet,nzeta) :: theta_star_in
real(kind=CWP), intent(in), dimension(nthet,nzeta) :: zeta_in
real(kind=CWP), intent(out) :: theta_out(nthet,nzeta)
real(kind=CWP), intent(out) :: cart_coords(3,nthet,nzeta)

public subroutine finalize_gvec_to_gene_c() bind(c,name='finalize_gvec_to_gene')

Arguments

None

public subroutine test_int_array_c(dim1, NPlot) bind(c,name='test_int_array')

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), value :: dim1
integer(kind=C_INT), intent(in) :: NPlot(dim1)

private subroutine test_print_char_rank2_array_c(strlen, nval, varnames_c) bind(c,name='test_print_char_rank2_array')

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), intent(in), value :: strlen
integer(kind=C_INT), intent(in), value :: nval
character(kind=C_CHAR, len=1), intent(in) :: varnames_c(strlen,nval)

public subroutine test_print_file_name_c(fileName) bind(c,name='test_print_file_name')

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), dimension(*) :: fileName

public subroutine test_pass_arrays_shift_c(nthet, nzeta, arr_in, arr_out) bind(c, name = "test_pass_arrays_shift")

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), value :: nthet
integer(kind=C_INT), value :: nzeta
real(kind=CWP), intent(in) :: arr_in(nthet,nzeta)
real(kind=CWP), intent(out) :: arr_out(nthet,nzeta)

private subroutine c_to_f_string(s, f)

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), intent(in) :: s(*)
character(len=:), intent(out), allocatable :: f