p_main Program

Uses

  • program~~p_main~~UsesGraph program~p_main p_main module~m_start_up m_start_up program~p_main->module~m_start_up m_weno m_weno program~p_main->m_weno module~m_mpi_proxy m_mpi_proxy program~p_main->module~m_mpi_proxy openacc openacc program~p_main->openacc m_cbc m_cbc program~p_main->m_cbc m_data_output m_data_output program~p_main->m_data_output module~m_derived_variables m_derived_variables program~p_main->module~m_derived_variables module~m_variables_conversion m_variables_conversion program~p_main->module~m_variables_conversion module~m_global_parameters m_global_parameters program~p_main->module~m_global_parameters module~m_qbmm m_qbmm program~p_main->module~m_qbmm module~m_time_steppers m_time_steppers program~p_main->module~m_time_steppers m_derived_types m_derived_types program~p_main->m_derived_types module~m_riemann_solvers m_riemann_solvers program~p_main->module~m_riemann_solvers module~nvtx nvtx program~p_main->module~nvtx module~m_rhs m_rhs program~p_main->module~m_rhs module~m_start_up->module~m_mpi_proxy module~m_start_up->module~m_variables_conversion module~m_start_up->module~m_global_parameters module~m_start_up->m_derived_types m_compile_specific m_compile_specific module~m_start_up->m_compile_specific module~m_mpi_proxy->module~m_global_parameters module~m_mpi_proxy->m_derived_types mpi mpi module~m_mpi_proxy->mpi module~m_derived_variables->module~m_mpi_proxy module~m_derived_variables->m_data_output module~m_derived_variables->module~m_global_parameters module~m_derived_variables->module~m_time_steppers module~m_derived_variables->m_derived_types module~m_variables_conversion->module~m_mpi_proxy module~m_variables_conversion->module~m_global_parameters module~m_variables_conversion->m_derived_types module~m_variables_conversion->module~nvtx module~m_global_parameters->openacc module~m_global_parameters->m_derived_types module~m_global_parameters->mpi module~m_qbmm->module~m_mpi_proxy module~m_qbmm->module~m_variables_conversion module~m_qbmm->module~m_global_parameters module~m_qbmm->m_derived_types module~m_time_steppers->module~m_mpi_proxy module~m_time_steppers->m_data_output module~m_time_steppers->module~m_global_parameters module~m_time_steppers->m_derived_types module~m_time_steppers->module~nvtx module~m_time_steppers->module~m_rhs module~m_bubbles m_bubbles module~m_time_steppers->module~m_bubbles m_fftw m_fftw module~m_time_steppers->m_fftw module~m_riemann_solvers->module~m_mpi_proxy module~m_riemann_solvers->module~m_variables_conversion module~m_riemann_solvers->module~m_global_parameters module~m_riemann_solvers->m_derived_types module~m_riemann_solvers->module~m_bubbles iso_c_binding iso_c_binding module~nvtx->iso_c_binding module~m_rhs->m_weno module~m_rhs->module~m_mpi_proxy module~m_rhs->m_cbc module~m_rhs->module~m_variables_conversion module~m_rhs->module~m_global_parameters module~m_rhs->module~m_qbmm module~m_rhs->m_derived_types module~m_rhs->module~m_riemann_solvers module~m_rhs->module~nvtx module~m_rhs->module~m_bubbles module~m_bubbles->module~m_mpi_proxy module~m_bubbles->module~m_variables_conversion module~m_bubbles->module~m_global_parameters module~m_bubbles->m_derived_types

@file p_main.f90 @brief Contains program p_main @author S. Bryngelson, K. Schimdmayer, V. Coralic, J. Meng, K. Maeda, T. Colonius @version 1.0 @date JUNE 06 2019 @brief Quasi-conservative, shock- and interface- capturing finite-volume scheme for the multicomponent Navier-Stokes equations. The system is augmented with the relevant advection equations to capture the material interfaces and closed by the stiffened equation of state as well as any required mixture relations. The effects of surface tension are included and modeled through a volume force that acts across the diffuse material interface regions. The implementation specifics of surface tension may be found in the work by Perigaud and Saurel (2005). Note that both viscous and capillarity effects are only available in the volume fraction model.

schemes for spatial reconstruction of variables

from the conservative and primitive variables


Calls

program~~p_main~~CallsGraph program~p_main p_main proc~s_assign_default_values_to_user_inputs s_assign_default_values_to_user_inputs program~p_main->proc~s_assign_default_values_to_user_inputs s_write_data_files s_write_data_files program~p_main->s_write_data_files proc~mpi_bcast_time_step_values mpi_bcast_time_step_values program~p_main->proc~mpi_bcast_time_step_values proc~s_populate_grid_variables_buffers s_populate_grid_variables_buffers program~p_main->proc~s_populate_grid_variables_buffers proc~s_finalize_derived_variables_module s_finalize_derived_variables_module program~p_main->proc~s_finalize_derived_variables_module proc~s_finalize_riemann_solvers_module s_finalize_riemann_solvers_module program~p_main->proc~s_finalize_riemann_solvers_module s_finalize_weno_module s_finalize_weno_module program~p_main->s_finalize_weno_module acc_get_device_type acc_get_device_type program~p_main->acc_get_device_type proc~s_initialize_variables_conversion_module s_initialize_variables_conversion_module program~p_main->proc~s_initialize_variables_conversion_module proc~s_initialize_derived_variables s_initialize_derived_variables program~p_main->proc~s_initialize_derived_variables proc~s_finalize_start_up_module s_finalize_start_up_module program~p_main->proc~s_finalize_start_up_module proc~s_finalize_variables_conversion_module s_finalize_variables_conversion_module program~p_main->proc~s_finalize_variables_conversion_module proc~s_finalize_global_parameters_module s_finalize_global_parameters_module program~p_main->proc~s_finalize_global_parameters_module proc~s_mpi_initialize s_mpi_initialize program~p_main->proc~s_mpi_initialize proc~s_read_input_file s_read_input_file program~p_main->proc~s_read_input_file proc~s_mpi_decompose_computational_domain s_mpi_decompose_computational_domain program~p_main->proc~s_mpi_decompose_computational_domain s_initialize_cbc_module s_initialize_cbc_module program~p_main->s_initialize_cbc_module proc~s_initialize_global_parameters_module s_initialize_global_parameters_module program~p_main->proc~s_initialize_global_parameters_module s_initialize_data_output_module s_initialize_data_output_module program~p_main->s_initialize_data_output_module proc~s_2nd_order_tvd_rk s_2nd_order_tvd_rk program~p_main->proc~s_2nd_order_tvd_rk proc~s_finalize_time_steppers_module s_finalize_time_steppers_module program~p_main->proc~s_finalize_time_steppers_module proc~s_finalize_rhs_module s_finalize_rhs_module program~p_main->proc~s_finalize_rhs_module proc~s_finalize_mpi_proxy_module s_finalize_mpi_proxy_module program~p_main->proc~s_finalize_mpi_proxy_module proc~s_initialize_rhs_module s_initialize_rhs_module program~p_main->proc~s_initialize_rhs_module s_initialize_weno_module s_initialize_weno_module program~p_main->s_initialize_weno_module proc~s_check_input_file s_check_input_file program~p_main->proc~s_check_input_file proc~s_initialize_parallel_io s_initialize_parallel_io program~p_main->proc~s_initialize_parallel_io acc_present_dump acc_present_dump program~p_main->acc_present_dump proc~s_initialize_riemann_solvers_module s_initialize_riemann_solvers_module program~p_main->proc~s_initialize_riemann_solvers_module proc~s_initialize_time_steppers_module s_initialize_time_steppers_module program~p_main->proc~s_initialize_time_steppers_module proc~s_initialize_internal_energy_equations s_initialize_internal_energy_equations program~p_main->proc~s_initialize_internal_energy_equations proc~s_compute_derived_variables s_compute_derived_variables program~p_main->proc~s_compute_derived_variables proc~s_mpi_finalize s_mpi_finalize program~p_main->proc~s_mpi_finalize mpi_comm_rank mpi_comm_rank program~p_main->mpi_comm_rank s_initialize_fftw_module s_initialize_fftw_module program~p_main->s_initialize_fftw_module proc~s_initialize_derived_variables_module s_initialize_derived_variables_module program~p_main->proc~s_initialize_derived_variables_module proc~s_3rd_order_tvd_rk s_3rd_order_tvd_rk program~p_main->proc~s_3rd_order_tvd_rk s_finalize_cbc_module s_finalize_cbc_module program~p_main->s_finalize_cbc_module acc_get_num_devices acc_get_num_devices program~p_main->acc_get_num_devices proc~s_mpi_bcast_user_inputs s_mpi_bcast_user_inputs program~p_main->proc~s_mpi_bcast_user_inputs proc~s_initialize_mpi_proxy_module s_initialize_mpi_proxy_module program~p_main->proc~s_initialize_mpi_proxy_module proc~s_initialize_start_up_module s_initialize_start_up_module program~p_main->proc~s_initialize_start_up_module proc~s_initialize_qbmm_module s_initialize_qbmm_module program~p_main->proc~s_initialize_qbmm_module proc~s_1st_order_tvd_rk s_1st_order_tvd_rk program~p_main->proc~s_1st_order_tvd_rk proc~s_mpi_barrier s_mpi_barrier program~p_main->proc~s_mpi_barrier s_finalize_data_output_module s_finalize_data_output_module program~p_main->s_finalize_data_output_module s_finalize_fftw_module s_finalize_fftw_module program~p_main->s_finalize_fftw_module mpi_comm_split_type mpi_comm_split_type program~p_main->mpi_comm_split_type mpi_comm_size mpi_comm_size program~p_main->mpi_comm_size acc_set_device_num acc_set_device_num program~p_main->acc_set_device_num mpi_gather mpi_gather proc~mpi_bcast_time_step_values->mpi_gather proc~s_mpi_sendrecv_grid_variables_buffers s_mpi_sendrecv_grid_variables_buffers proc~s_populate_grid_variables_buffers->proc~s_mpi_sendrecv_grid_variables_buffers s_close_com_files s_close_com_files proc~s_finalize_derived_variables_module->s_close_com_files s_close_cb_files s_close_cb_files proc~s_finalize_derived_variables_module->s_close_cb_files s_close_probe_files s_close_probe_files proc~s_finalize_derived_variables_module->s_close_probe_files s_open_cb_files s_open_cb_files proc~s_initialize_derived_variables->s_open_cb_files s_open_probe_files s_open_probe_files proc~s_initialize_derived_variables->s_open_probe_files s_open_com_files s_open_com_files proc~s_initialize_derived_variables->s_open_com_files proc~s_mpi_initialize->mpi_comm_rank proc~s_mpi_initialize->mpi_comm_size mpi_init mpi_init proc~s_mpi_initialize->mpi_init mpi_abort mpi_abort proc~s_mpi_initialize->mpi_abort proc~s_mpi_abort s_mpi_abort proc~s_read_input_file->proc~s_mpi_abort mpi_cart_rank mpi_cart_rank proc~s_mpi_decompose_computational_domain->mpi_cart_rank proc~s_mpi_decompose_computational_domain->proc~s_mpi_abort mpi_cart_create mpi_cart_create proc~s_mpi_decompose_computational_domain->mpi_cart_create mpi_cart_coords mpi_cart_coords proc~s_mpi_decompose_computational_domain->mpi_cart_coords proc~s_initialize_nonpoly s_initialize_nonpoly proc~s_initialize_global_parameters_module->proc~s_initialize_nonpoly proc~s_simpson s_simpson proc~s_initialize_global_parameters_module->proc~s_simpson s_write_run_time_information s_write_run_time_information proc~s_2nd_order_tvd_rk->s_write_run_time_information proc~s_pressure_relaxation_procedure s_pressure_relaxation_procedure proc~s_2nd_order_tvd_rk->proc~s_pressure_relaxation_procedure proc~s_time_step_cycling s_time_step_cycling proc~s_2nd_order_tvd_rk->proc~s_time_step_cycling proc~s_compute_rhs s_compute_rhs proc~s_2nd_order_tvd_rk->proc~s_compute_rhs s_apply_fourier_filter s_apply_fourier_filter proc~s_2nd_order_tvd_rk->s_apply_fourier_filter proc~nvtxendrange nvtxEndRange proc~s_2nd_order_tvd_rk->proc~nvtxendrange proc~nvtxstartrange nvtxStartRange proc~s_2nd_order_tvd_rk->proc~nvtxstartrange s_close_run_time_information_file s_close_run_time_information_file proc~s_finalize_time_steppers_module->s_close_run_time_information_file proc~s_check_input_file->proc~s_mpi_abort my_inquire my_inquire proc~s_check_input_file->my_inquire mpi_info_create mpi_info_create proc~s_initialize_parallel_io->mpi_info_create mpi_info_set mpi_info_set proc~s_initialize_parallel_io->mpi_info_set s_open_run_time_information_file s_open_run_time_information_file proc~s_initialize_time_steppers_module->s_open_run_time_information_file s_write_cb_files s_write_cb_files proc~s_compute_derived_variables->s_write_cb_files y_accel y_accel proc~s_compute_derived_variables->y_accel accel_mag accel_mag proc~s_compute_derived_variables->accel_mag s_write_com_files s_write_com_files proc~s_compute_derived_variables->s_write_com_files x_accel x_accel proc~s_compute_derived_variables->x_accel z_accel z_accel proc~s_compute_derived_variables->z_accel s_write_probe_files s_write_probe_files proc~s_compute_derived_variables->s_write_probe_files mpi_finalize mpi_finalize proc~s_mpi_finalize->mpi_finalize proc~s_3rd_order_tvd_rk->s_write_run_time_information proc~s_3rd_order_tvd_rk->proc~s_pressure_relaxation_procedure proc~s_3rd_order_tvd_rk->proc~s_time_step_cycling proc~s_3rd_order_tvd_rk->proc~s_compute_rhs proc~s_3rd_order_tvd_rk->s_apply_fourier_filter proc~s_3rd_order_tvd_rk->proc~nvtxendrange proc~s_3rd_order_tvd_rk->proc~nvtxstartrange mpi_bcast mpi_bcast proc~s_mpi_bcast_user_inputs->mpi_bcast proc~s_1st_order_tvd_rk->s_write_run_time_information proc~s_1st_order_tvd_rk->proc~s_pressure_relaxation_procedure proc~s_1st_order_tvd_rk->proc~s_time_step_cycling proc~s_1st_order_tvd_rk->proc~s_compute_rhs proc~s_1st_order_tvd_rk->s_apply_fourier_filter proc~s_1st_order_tvd_rk->proc~nvtxendrange proc~s_1st_order_tvd_rk->proc~nvtxstartrange mpi_barrier mpi_barrier proc~s_mpi_barrier->mpi_barrier proc~s_transcoeff s_transcoeff proc~s_initialize_nonpoly->proc~s_transcoeff proc~s_compute_rhs->proc~nvtxendrange proc~s_compute_rhs->proc~nvtxstartrange proc~s_get_viscous s_get_viscous proc~s_compute_rhs->proc~s_get_viscous proc~f_h f_H proc~s_compute_rhs->proc~f_h proc~s_comp_n_from_prim s_comp_n_from_prim proc~s_compute_rhs->proc~s_comp_n_from_prim proc~s_convert_conservative_to_primitive_variables s_convert_conservative_to_primitive_variables proc~s_compute_rhs->proc~s_convert_conservative_to_primitive_variables proc~f_rddot_km f_rddot_KM proc~s_compute_rhs->proc~f_rddot_km proc~f_cpbw f_cpbw proc~s_compute_rhs->proc~f_cpbw proc~f_cpinfdot f_cpinfdot proc~s_compute_rhs->proc~f_cpinfdot proc~s_quad s_quad proc~s_compute_rhs->proc~s_quad proc~f_rddot_rp f_rddot_RP proc~s_compute_rhs->proc~f_rddot_rp proc~s_mom_inv s_mom_inv proc~s_compute_rhs->proc~s_mom_inv proc~f_vflux f_vflux proc~s_compute_rhs->proc~f_vflux proc~f_cgas f_cgas proc~s_compute_rhs->proc~f_cgas proc~f_hdot f_Hdot proc~s_compute_rhs->proc~f_hdot s_cbc s_cbc proc~s_compute_rhs->s_cbc proc~s_bwproperty s_bwproperty proc~s_compute_rhs->proc~s_bwproperty proc~f_cpbw_km f_cpbw_KM proc~s_compute_rhs->proc~f_cpbw_km proc~f_rddot f_rddot proc~s_compute_rhs->proc~f_rddot proc~f_bpres_dot f_bpres_dot proc~s_compute_rhs->proc~f_bpres_dot mpi_sendrecv mpi_sendrecv proc~s_mpi_sendrecv_grid_variables_buffers->mpi_sendrecv proc~s_mpi_abort->mpi_abort dexp dexp proc~s_simpson->dexp interface~nvtxrangepush nvtxRangePush proc~nvtxstartrange->interface~nvtxrangepush proc~s_convert_species_to_mixture_variables_acc s_convert_species_to_mixture_variables_acc proc~s_convert_conservative_to_primitive_variables->proc~s_convert_species_to_mixture_variables_acc proc~s_convert_species_to_mixture_variables_bubbles_acc s_convert_species_to_mixture_variables_bubbles_acc proc~s_convert_conservative_to_primitive_variables->proc~s_convert_species_to_mixture_variables_bubbles_acc proc~s_comp_n_from_cons s_comp_n_from_cons proc~s_convert_conservative_to_primitive_variables->proc~s_comp_n_from_cons proc~s_mom_inv->proc~s_comp_n_from_prim proc~s_coeff s_coeff proc~s_mom_inv->proc~s_coeff csqrt csqrt proc~s_transcoeff->csqrt cexp cexp proc~s_transcoeff->cexp

Contents


Variables

TypeAttributesNameInitial
integer :: err_code
integer :: ierr
integer :: t_step
integer :: i
real(kind=kind(0d0)) :: time_avg
real(kind=kind(0d0)) :: time_final
real(kind=kind(0d0)) :: io_time_avg
real(kind=kind(0d0)) :: io_time_final
real(kind=kind(0d0)), allocatable, dimension(:):: proc_time
real(kind=kind(0d0)), allocatable, dimension(:):: io_proc_time
logical :: file_exists
real(kind=kind(0d0)) :: start
real(kind=kind(0d0)) :: finish
integer :: nt
real(kind=kind(0d0)) :: starttime
real(kind=kind(0d0)) :: endtime
integer :: num_devices
integer :: local_size
integer :: num_nodes
integer :: ppn
integer :: my_device_num
integer :: dev
integer :: devNum
integer :: local_rank
integer :: local_comm
integer(kind=acc_device_kind) :: devtype