bem_periodic_zero_mode_c Module

C ABI wrapper for the physical periodic zero mode.


Uses

  • module~~bem_periodic_zero_mode_c~~UsesGraph module~bem_periodic_zero_mode_c bem_periodic_zero_mode_c ieee_arithmetic ieee_arithmetic module~bem_periodic_zero_mode_c->ieee_arithmetic iso_c_binding iso_c_binding module~bem_periodic_zero_mode_c->iso_c_binding module~bem_kinds bem_kinds module~bem_periodic_zero_mode_c->module~bem_kinds module~bem_periodic_zero_mode_eval bem_periodic_zero_mode_eval module~bem_periodic_zero_mode_c->module~bem_periodic_zero_mode_eval module~bem_periodic_zero_mode_plan bem_periodic_zero_mode_plan module~bem_periodic_zero_mode_c->module~bem_periodic_zero_mode_plan iso_fortran_env iso_fortran_env module~bem_kinds->iso_fortran_env module~bem_periodic_zero_mode_eval->module~bem_kinds module~bem_periodic_zero_mode_eval->module~bem_periodic_zero_mode_plan module~bem_constants bem_constants module~bem_periodic_zero_mode_eval->module~bem_constants module~bem_periodic_zero_mode_plan->ieee_arithmetic module~bem_periodic_zero_mode_plan->module~bem_kinds module~bem_periodic_zero_mode_plan->module~bem_constants module~bem_types bem_types module~bem_periodic_zero_mode_plan->module~bem_types module~bem_constants->module~bem_kinds module~bem_types->module~bem_kinds

Variables

Type Visibility Attributes Name Initial
integer(kind=c_int), public, parameter :: beach_zero_mode_ok = 0_c_int
integer(kind=c_int), public, parameter :: beach_zero_mode_invalid_handle = 1_c_int
integer(kind=c_int), public, parameter :: beach_zero_mode_invalid_argument = 2_c_int
integer(kind=c_int), public, parameter :: beach_zero_mode_not_ready = 3_c_int

Functions

public function beach_zero_mode_create(handle) result(status) bind(C, name='beach_zero_mode_create'))

Arguments

Type IntentOptional Attributes Name
type(c_ptr), intent(out) :: handle

Return Value integer(kind=c_int)

public function beach_zero_mode_destroy(handle) result(status) bind(C, name='beach_zero_mode_destroy'))

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: handle

Return Value integer(kind=c_int)

public function beach_zero_mode_build(handle, nsrc, source_heights_ptr, area_xy) result(status) bind(C, name='beach_zero_mode_build'))

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: handle
integer(kind=c_int), value :: nsrc
type(c_ptr), value :: source_heights_ptr
real(kind=c_double), value :: area_xy

Return Value integer(kind=c_int)

public function beach_zero_mode_update(handle, nsrc, charge_ptr, e_bottom, z_gauge, phi_gauge) result(status) bind(C, name='beach_zero_mode_update'))

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: handle
integer(kind=c_int), value :: nsrc
type(c_ptr), value :: charge_ptr
real(kind=c_double), value :: e_bottom
real(kind=c_double), value :: z_gauge
real(kind=c_double), value :: phi_gauge

Return Value integer(kind=c_int)

public function beach_zero_mode_eval(handle, ntarget, z_ptr, trace, phi_ptr, ez_ptr) result(status) bind(C, name='beach_zero_mode_eval'))

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: handle
integer(kind=c_int), value :: ntarget
type(c_ptr), value :: z_ptr
integer(kind=c_int), value :: trace
type(c_ptr), value :: phi_ptr
type(c_ptr), value :: ez_ptr

Return Value integer(kind=c_int)