write_netcdf_helmholtz Subroutine

public subroutine write_netcdf_helmholtz(fgid, mesh, bnd_type_core, bnd_type_wall, bnd_type_dome, bnd_type_out, co, lambda, xi, rhs, guess, sol, hcsr_write_on)

Writes a Helmholtz problem to NETCDF file

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: fgid

NETCDF file or group id

type(mesh_cart_t), intent(in) :: mesh

Mesh

integer, intent(in) :: bnd_type_core

Boundary descriptor for core boundary

integer, intent(in) :: bnd_type_wall

Boundary descriptor for wall boundary

integer, intent(in) :: bnd_type_dome

Boundary descriptor for dome boundary

integer, intent(in) :: bnd_type_out

Boundary descriptor for outer(mask) boundary

real(kind=FP), intent(in), dimension(mesh%get_n_points()) :: co

Coefficient within Helmholtz operator

real(kind=FP), intent(in), dimension(mesh%get_n_points_inner()) :: lambda

Coefficient within Helmholtz operator

real(kind=FP), intent(in), dimension(mesh%get_n_points_inner()) :: xi

Coefficient within Helmholtz operator

real(kind=FP), intent(in), dimension(mesh%get_n_points()) :: rhs

Right hand side

real(kind=FP), intent(in), dimension(mesh%get_n_points()) :: guess

Initial guess

real(kind=FP), intent(in), dimension(mesh%get_n_points()) :: sol

Solution

logical, intent(in) :: hcsr_write_on

Switch to write also Helmoltz matrix in CSR format Useful for debugging, benchmarking wwith external tools


Calls

proc~~write_netcdf_helmholtz~~CallsGraph proc~write_netcdf_helmholtz write_netcdf_helmholtz interface~get_district mesh_cart_t%get_district proc~write_netcdf_helmholtz->interface~get_district interface~get_n_points mesh_cart_t%get_n_points proc~write_netcdf_helmholtz->interface~get_n_points interface~get_n_points_boundary mesh_cart_t%get_n_points_boundary proc~write_netcdf_helmholtz->interface~get_n_points_boundary interface~get_n_points_ghost mesh_cart_t%get_n_points_ghost proc~write_netcdf_helmholtz->interface~get_n_points_ghost interface~get_n_points_inner mesh_cart_t%get_n_points_inner proc~write_netcdf_helmholtz->interface~get_n_points_inner nf90_def_dim nf90_def_dim proc~write_netcdf_helmholtz->nf90_def_dim nf90_def_grp nf90_def_grp proc~write_netcdf_helmholtz->nf90_def_grp nf90_def_var nf90_def_var proc~write_netcdf_helmholtz->nf90_def_var nf90_enddef nf90_enddef proc~write_netcdf_helmholtz->nf90_enddef nf90_put_att nf90_put_att proc~write_netcdf_helmholtz->nf90_put_att nf90_put_var nf90_put_var proc~write_netcdf_helmholtz->nf90_put_var proc~build_helmholtz_csr build_helmholtz_csr proc~write_netcdf_helmholtz->proc~build_helmholtz_csr proc~get_stderr get_stderr proc~write_netcdf_helmholtz->proc~get_stderr proc~nf90_handle_err nf90_handle_err proc~write_netcdf_helmholtz->proc~nf90_handle_err proc~write_netcdf csrmat_t%write_netcdf proc~write_netcdf_helmholtz->proc~write_netcdf proc~build_helmholtz_csr->interface~get_n_points proc~build_helmholtz_csr->interface~get_n_points_boundary proc~build_helmholtz_csr->interface~get_n_points_ghost proc~build_helmholtz_csr->interface~get_n_points_inner interface~get_index_neighbor mesh_cart_t%get_index_neighbor proc~build_helmholtz_csr->interface~get_index_neighbor interface~get_spacing_c mesh_cart_t%get_spacing_c proc~build_helmholtz_csr->interface~get_spacing_c interface~rank_list rank_list proc~build_helmholtz_csr->interface~rank_list proc~compute_bndnmn_matrix_row compute_bndnmn_matrix_row proc~build_helmholtz_csr->proc~compute_bndnmn_matrix_row proc~handle_error handle_error proc~build_helmholtz_csr->proc~handle_error nf90_strerror nf90_strerror proc~nf90_handle_err->nf90_strerror proc~write_netcdf->nf90_def_dim proc~write_netcdf->nf90_def_var proc~write_netcdf->nf90_enddef proc~write_netcdf->nf90_put_att proc~write_netcdf->nf90_put_var nf90_redef nf90_redef proc~write_netcdf->nf90_redef proc~handle_error_netcdf handle_error_netcdf proc~write_netcdf->proc~handle_error_netcdf proc~compute_bndnmn_matrix_row->proc~get_stderr proc~compute_bndnmn_matrix_row->interface~get_index_neighbor proc~compute_bndnmn_matrix_row->interface~get_spacing_c interface~normal_to_boundary mesh_cart_t%normal_to_boundary proc~compute_bndnmn_matrix_row->interface~normal_to_boundary none~handle_error error_handler_t%handle_error proc~handle_error->none~handle_error none~handle_error_netcdf error_handler_t%handle_error_netcdf proc~handle_error_netcdf->none~handle_error_netcdf

Called by

proc~~write_netcdf_helmholtz~~CalledByGraph proc~write_netcdf_helmholtz write_netcdf_helmholtz program~benchmark_helmholtz_solvers benchmark_helmholtz_solvers program~benchmark_helmholtz_solvers->proc~write_netcdf_helmholtz