|
FE-Project
|
Derived type to manage a computational mesh of global ocean model. More...
Public Member Functions | |
| procedure | init (this) |
| Initialize an object to manage computational mesh. | |
| procedure | final (this) |
| Finalize an object to manage computational mesh. | |
| procedure | create_communicator (this, sfield_num, hvfield_num, htensorfield_num, var_manager, field_list, commid, field_list_is, field_list_ie) |
| Create a communicator for data communication on global computational domain. | |
| procedure | setup_restartfile1 (this, restart_file, var_num, dim_name_postfix) |
| procedure | setup_restartfile2 (this, restart_file, in_basename, in_postfix_timelabel, out_basename, out_postfix_timelabel, out_dtype, out_title, var_num, dim_name_postfix) |
| procedure | calc_uvmet (this, u, v, umet, vmet) |
| Calculate horizontal vector components in longitude-latitude coordinates. | |
| procedure | setup_vcoordinate (this) |
| Setup the vertical coordinate. | |
| Public Member Functions inherited from mod_ocean_mesh::oceanmesh | |
| procedure | oceanmesh_init (this, mesh) |
| Setup an object to manage a computational mesh. | |
| procedure | oceanmesh_final (this) |
| Finalize an object to manage a computational mesh. | |
| procedure(oceanmesh_setup_restartfile1), deferred, public | setup_restartfile1 oceanmesh_setup_restartfile1 |
| procedure(oceanmesh_setup_restartfile2), deferred, public | setup_restartfile2 oceanmesh_setup_restartfile2 |
| procedure(oceanmesh_calc_uvmet), deferred, public | calc_uvmet oceanmesh_calc_uvmet |
| generic | setup_restartfile setup_restartfile1 |
| generic | setup_restartfile setup_restartfile2 |
| procedure(oceanmesh_setup_vcoord), deferred, public | setup_vcoordinate oceanmesh_setup_vcoord |
| procedure | read_topography_file (this, topo_in_basename, topo_in_varname, mesh2d, dom_zmin) |
| Public Member Functions inherited from scale_model_mesh_manager::modelmesh3d | |
| procedure, public | modelmesh3d_init (this, mesh) |
| procedure, public | modelmesh3d_final (this) |
| procedure(modelmesh3d_create_communicator), deferred, public | create_communicator modelmesh3d_create_communicator |
| Public Member Functions inherited from scale_model_meshbase_manager::modelmeshbase3d | |
| procedure, public | modelmeshbase3d_init (this, mesh) |
| procedure, public | modelmeshbase3d_final (this) |
| procedure, public | prepairelementoperation (this, element_operation_type, spmv_storage_format_) |
| procedure, public | getmodelmesh (this, ptr_mesh) |
| Public Member Functions inherited from scale_model_meshbase_manager::modelmeshbase | |
| procedure | modelmeshbase_init (this, ndim) |
| procedure | modelmeshbase_final (this) |
| procedure | get_communicatorid (this, max_communicator_num) |
| procedure(modelmeshbase_get_modelmesh), deferred, public | getmodelmesh (this, ptr_mesh) |
Public Attributes | |
| type(meshcubedspheredom3d) | mesh |
| Object for 3D cubed-sphere mesh. | |
| type(meshfieldcommcubedspheredom3d), dimension(ocn_mesh_max_commnuicator_num) | comm_list |
| Public Attributes inherited from mod_ocean_mesh::oceanmesh | |
| type(hexahedralelement) | element |
| Object to manage 3D reference element. | |
| type(lineelement) | element_v1d |
| Object to manage 1D reference element for the vertical direction. | |
| type(meshtopography) | topography |
| Object to manage topography. | |
| integer | vcoord_type_id |
| ID of vertical coordinate type. | |
| logical | comm_use_mpi_pc |
| Flag whether persistent communication in MPI is used. | |
| logical | comm_use_mpi_pc_fujitsu_ext |
| Flag whether Fujitsu extension in MPI persistent communication is used. | |
| Public Attributes inherited from scale_model_meshbase_manager::modelmeshbase3d | |
| class(meshbase3d), pointer | ptr_mesh |
| type(elementoperationgeneral) | element_operation_general |
| class(elementoperationtensorprod3d), allocatable | element_operation_tensorprod |
| logical | initialized_element_operation |
| Public Attributes inherited from scale_model_meshbase_manager::modelmeshbase | |
| type(sparsemat), dimension(:), allocatable | doptrmat |
| type(sparsemat), dimension(:), allocatable | soptrmat |
| type(sparsemat) | liftoptrmat |
| class(elementoperationbase3d), pointer | element3d_operation |
| integer | communicator_num |
Derived type to manage a computational mesh of global ocean model.
Definition at line 47 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::init | ( | class(oceanmeshgm), intent(inout), target | this | ) |
Initialize an object to manage computational mesh.
Definition at line 51 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::final | ( | class(oceanmeshgm), intent(inout) | this | ) |
Finalize an object to manage computational mesh.
Definition at line 52 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::create_communicator | ( | class(oceanmeshgm), intent(inout), target | this, |
| integer, intent(in) | sfield_num, | ||
| integer, intent(in) | hvfield_num, | ||
| integer, intent(in) | htensorfield_num, | ||
| class(modelvarmanager), intent(inout) | var_manager, | ||
| class(meshfield3d), dimension(:), intent(in) | field_list, | ||
| integer, intent(out) | commid, | ||
| integer, intent(in), optional | field_list_is, | ||
| integer, intent(in), optional | field_list_ie ) |
Create a communicator for data communication on global computational domain.
| [in] | sfield_num | Number of scalar fields |
| [in] | hvfield_num | Number of horizontal vector fields |
| [in] | htensorfield_num | Number of horizontal tensor fields |
| [in,out] | var_manager | Object to manage variables |
| [in] | field_list | Array of 3D fields |
| [out] | commid | Communicator ID |
| [in] | field_list_is | Starting index of the field list for communication (optional) |
| [in] | field_list_ie | Ending index of the field list for communication (optional) |
Definition at line 53 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::setup_restartfile1 | ( | class(oceanmeshgm), intent(inout), target | this, |
| class(file_restart_meshfield_component), intent(inout) | restart_file, | ||
| integer, intent(in) | var_num, | ||
| character(*), intent(in) | dim_name_postfix ) |
Definition at line 54 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::setup_restartfile2 | ( | class(oceanmeshgm), intent(inout), target | this, |
| class(file_restart_meshfield_component), intent(inout) | restart_file, | ||
| character(*), intent(in) | in_basename, | ||
| logical, intent(in) | in_postfix_timelabel, | ||
| character(*), intent(in) | out_basename, | ||
| logical, intent(in) | out_postfix_timelabel, | ||
| character(*), intent(in) | out_dtype, | ||
| character(*), intent(in) | out_title, | ||
| integer, intent(in) | var_num, | ||
| character(*), intent(in) | dim_name_postfix ) |
Definition at line 55 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::calc_uvmet | ( | class(oceanmeshgm), intent(in), target | this, |
| type(meshfield3d), intent(in) | u, | ||
| type(meshfield3d), intent(in) | v, | ||
| type(meshfield3d), intent(inout) | umet, | ||
| type(meshfield3d), intent(inout) | vmet ) |
Calculate horizontal vector components in longitude-latitude coordinates.
Definition at line 56 of file mod_ocean_mesh_gm.F90.
| procedure mod_ocean_mesh_gm::oceanmeshgm::setup_vcoordinate | ( | class(oceanmeshgm), intent(inout), target | this | ) |
Setup the vertical coordinate.
Definition at line 57 of file mod_ocean_mesh_gm.F90.
| type(meshcubedspheredom3d) mod_ocean_mesh_gm::oceanmeshgm::mesh |
Object for 3D cubed-sphere mesh.
Definition at line 48 of file mod_ocean_mesh_gm.F90.
| type(meshfieldcommcubedspheredom3d), dimension(ocn_mesh_max_commnuicator_num) mod_ocean_mesh_gm::oceanmeshgm::comm_list |
Definition at line 49 of file mod_ocean_mesh_gm.F90.