tem_acoustic_pulse_module Module


Uses

  • module~~tem_acoustic_pulse_module~~UsesGraph module~tem_acoustic_pulse_module tem_acoustic_pulse_module module~tem_aux_module tem_aux_module module~tem_acoustic_pulse_module->module~tem_aux_module module~aotus_module aotus_module module~tem_acoustic_pulse_module->module~aotus_module module~env_module env_module module~tem_acoustic_pulse_module->module~env_module module~tem_logging_module tem_logging_module module~tem_acoustic_pulse_module->module~tem_logging_module module~tem_aux_module->module~aotus_module module~tem_aux_module->module~env_module module~tem_aux_module->module~tem_logging_module module~tem_revision_module tem_revision_module module~tem_aux_module->module~tem_revision_module module~tem_comm_env_module tem_comm_env_module module~tem_aux_module->module~tem_comm_env_module module~flu_binding flu_binding module~tem_aux_module->module~flu_binding module~aot_table_module aot_table_module module~tem_aux_module->module~aot_table_module module~tem_tools_module tem_tools_module module~tem_aux_module->module~tem_tools_module module~tem_lua_requires_module tem_lua_requires_module module~tem_aux_module->module~tem_lua_requires_module mpi mpi module~tem_aux_module->mpi module~env_module->module~aotus_module module~env_module->module~flu_binding iso_fortran_env iso_fortran_env module~env_module->iso_fortran_env module~env_module->mpi module~tem_logging_module->module~aotus_module module~tem_logging_module->module~env_module module~tem_logging_module->module~aot_table_module module~tem_comm_env_module->mpi module~tem_tools_module->module~env_module module~tem_lua_requires_module->module~aotus_module module~tem_lua_requires_module->module~env_module module~tem_lua_requires_module->module~flu_binding module~tem_lua_requires_module->module~aot_table_module iso_c_binding iso_c_binding module~tem_lua_requires_module->iso_c_binding

Used by

  • module~~tem_acoustic_pulse_module~~UsedByGraph module~tem_acoustic_pulse_module tem_acoustic_pulse_module module~tem_spacetime_fun_module tem_spacetime_fun_module module~tem_spacetime_fun_module->module~tem_acoustic_pulse_module module~tem_derived_module tem_derived_module module~tem_derived_module->module~tem_spacetime_fun_module module~tem_spacetime_var_module tem_spacetime_var_module module~tem_derived_module->module~tem_spacetime_var_module module~tem_variable_module tem_variable_module module~tem_derived_module->module~tem_variable_module module~tem_operation_var_module tem_operation_var_module module~tem_derived_module->module~tem_operation_var_module program~tem_varsys_stfunvar_test tem_varSys_stfunVar_test program~tem_varsys_stfunvar_test->module~tem_spacetime_fun_module program~tem_varsys_stfunvar_test->module~tem_derived_module program~tem_varsys_stfunvar_test->module~tem_variable_module program~tem_varsys_derivevar_test tem_varSys_deriveVar_test program~tem_varsys_derivevar_test->module~tem_spacetime_fun_module module~tem_spacetime_var_module->module~tem_spacetime_fun_module module~tem_spacetime_var_module->module~tem_variable_module program~tem_variable_evaltype_test tem_variable_evaltype_test program~tem_variable_evaltype_test->module~tem_spacetime_fun_module program~tem_variable_evaltype_test->module~tem_derived_module program~tem_variable_evaltype_test->module~tem_variable_module program~tem_varsys_test tem_varSys_test program~tem_varsys_test->module~tem_spacetime_fun_module program~tem_varsys_test->module~tem_spacetime_var_module program~tem_varsys_test->module~tem_variable_module module~tem_varmap_module tem_varMap_module module~tem_varmap_module->module~tem_spacetime_fun_module module~tem_varmap_module->module~tem_spacetime_var_module module~tem_surfacedata_module tem_surfaceData_module module~tem_surfacedata_module->module~tem_spacetime_fun_module program~tem_spacetime_fun_test tem_spacetime_fun_test program~tem_spacetime_fun_test->module~tem_spacetime_fun_module program~tem_logical_opertor_test tem_logical_opertor_test program~tem_logical_opertor_test->module~tem_spacetime_fun_module program~tem_logical_opertor_test->module~tem_derived_module program~tem_logical_opertor_test->module~tem_variable_module program~tem_variable_extract_test tem_variable_extract_test program~tem_variable_extract_test->module~tem_spacetime_fun_module program~tem_variable_extract_test->module~tem_derived_module program~tem_variable_extract_test->module~tem_variable_module program~tem_variable_combine_test tem_variable_combine_Test program~tem_variable_combine_test->module~tem_spacetime_fun_module program~tem_variable_combine_test->module~tem_derived_module program~tem_variable_combine_test->module~tem_variable_module module~tem_face_module tem_face_module module~tem_face_module->module~tem_spacetime_fun_module module~tem_variable_module->module~tem_spacetime_fun_module module~tem_bc_module tem_bc_module module~tem_bc_module->module~tem_spacetime_fun_module module~tem_bc_module->module~tem_varmap_module program~tem_varsys_opvar_test tem_varSys_opVar_test program~tem_varsys_opvar_test->module~tem_spacetime_fun_module program~tem_varsys_opvar_test->module~tem_derived_module program~tem_varsys_opvar_test->module~tem_variable_module program~tem_face_test~3 tem_face_test program~tem_face_test~3->module~tem_face_module module~tem_depend_module tem_depend_module module~tem_depend_module->module~tem_varmap_module module~tem_restart_module tem_restart_module module~tem_restart_module->module~tem_varmap_module module~hvs_output_module hvs_output_module module~hvs_output_module->module~tem_varmap_module module~hvs_output_module->module~tem_restart_module program~tem_face_test tem_face_test program~tem_face_test->module~tem_face_module program~tem_face_test~2 tem_face_test program~tem_face_test~2->module~tem_face_module module~tem_tracking_module tem_tracking_module module~tem_tracking_module->module~tem_varmap_module module~tem_tracking_module->module~hvs_output_module module~tem_operation_var_module->module~tem_varmap_module module~tem_operation_var_module->module~tem_variable_module module~tem_convergence_module tem_convergence_module module~tem_convergence_module->module~tem_varmap_module module~tem_general_module tem_general_module module~tem_general_module->module~tem_restart_module module~tem_ini_condition_module tem_ini_condition_module module~tem_ini_condition_module->module~tem_depend_module module~tem_abortcriteria_module tem_abortCriteria_module module~tem_abortcriteria_module->module~tem_convergence_module program~tem_tracking_test tem_tracking_test program~tem_tracking_test->module~tem_tracking_module module~tem_simcontrol_module tem_simControl_module module~tem_simcontrol_module->module~tem_convergence_module

Contents


Derived Types

type, public :: tem_acoustic_pulse_type

Analytical solution for an acoustic wave emitted by a Gaussian pulse as described in Tam: Computational Acoustics, a wave number approach. Appendix G.3.

Read more…

Components

TypeVisibilityAttributesNameInitial
real(kind=rk), private :: amplitude

Pulse height in the initial condition at the center over the background value.

real(kind=rk), private :: center(3)

Location of the pulse center in 3D.

real(kind=rk), private :: halfwidth

Radius of the initial pulse, where half the amplitude is reached.

real(kind=rk), private :: background

A background value to use (result is given by background+pulse).

real(kind=rk), private :: speed_of_sound

Speed of sound is the velocity by which the acoustic wave is to be transported.


Functions

public function tem_eval_acoustic_pulse(me, coord, time, n) result(res)

Evaluate the acoustic pulse at given points in space for one point in time.

Read more…

Arguments

TypeIntentOptionalAttributesName
type(tem_acoustic_pulse_type), intent(in) :: me

Definition of the acoustic pulse to evaluate

real(kind=rk), intent(in) :: coord(n,3)

3D Coordinates of all points.

real(kind=rk), intent(in) :: time

Point in time to evaluate the points at.

integer, intent(in) :: n

Number of different points to evaluate the acoustic pulse at.

Return Value real(kind=rk)(n)

Analytical solution in all n points.


Subroutines

public subroutine tem_load_acoustic_pulse(conf, thandle, me)

Load the definition of an acoustic pulse from a configuration Lua script.

Arguments

TypeIntentOptionalAttributesName
type(flu_State) :: conf
integer, intent(in) :: thandle
type(tem_acoustic_pulse_type), intent(out) :: me