MODFLOW 6  version 6.7.0.dev3
USGS Modular Hydrologic Model
virtualgwfmodelmodule::virtualgwfmodeltype Type Reference
Inheritance diagram for virtualgwfmodelmodule::virtualgwfmodeltype:
Inheritance graph
Collaboration diagram for virtualgwfmodelmodule::virtualgwfmodeltype:
Collaboration graph

Public Member Functions

procedure create => vgwf_create
 
procedure destroy => vgwf_destroy
 
procedure prepare_stage => vgwf_prepare_stage
 
generic operator => eq_virtual_model, eq_numerical_model
 
procedure dis_get_nodeuser
 
procedure dis_noder_to_string
 
procedure vdc_create
 
generic map => map_scalar, map_array1d, map_array2d
 
procedure link_items => vdc_link_items
 
procedure set_element_map => vdc_set_element_map
 
procedure get_vrt_mem_path => vdc_get_vrt_mem_path
 
procedure set_orig_rank => vdc_set_orig_rank
 
procedure get_send_items => vdc_get_send_items
 
procedure get_recv_items => vdc_get_recv_items
 
procedure get_virtual_data => vdc_get_virtual_data
 
procedure print_items
 
procedure set
 

Public Attributes

type(virtualinttype), pointer npf_iangle1 => null()
 
type(virtualinttype), pointer npf_iangle2 => null()
 
type(virtualinttype), pointer npf_iangle3 => null()
 
type(virtualinttype), pointer npf_iwetdry => null()
 
type(virtualinttype), pointer inbuy => null()
 
type(virtualint1dtype), pointer npf_icelltype => null()
 
type(virtualdbl1dtype), pointer npf_k11 => null()
 
type(virtualdbl1dtype), pointer npf_k22 => null()
 
type(virtualdbl1dtype), pointer npf_k33 => null()
 
type(virtualdbl1dtype), pointer npf_angle1 => null()
 
type(virtualdbl1dtype), pointer npf_angle2 => null()
 
type(virtualdbl1dtype), pointer npf_angle3 => null()
 
type(virtualdbl1dtype), pointer npf_wetdry => null()
 
type(virtualdbl1dtype), pointer buy_dense => null()
 
class(numericalmodeltype), pointer local_model
 
type(virtualinttype), pointer con_ianglex => null()
 
type(virtualint1dtype), pointer con_ia => null()
 
type(virtualint1dtype), pointer con_ja => null()
 
type(virtualint1dtype), pointer con_jas => null()
 
type(virtualint1dtype), pointer con_ihc => null()
 
type(virtualdbl1dtype), pointer con_hwva => null()
 
type(virtualdbl1dtype), pointer con_cl1 => null()
 
type(virtualdbl1dtype), pointer con_cl2 => null()
 
type(virtualdbl1dtype), pointer con_anglex => null()
 
type(virtualinttype), pointer dis_ndim => null()
 
type(virtualinttype), pointer dis_nodes => null()
 
type(virtualinttype), pointer dis_nodesuser => null()
 
type(virtualint1dtype), pointer dis_nodeuser => null()
 
type(virtualinttype), pointer dis_nja => null()
 
type(virtualinttype), pointer dis_njas => null()
 
type(virtualdbltype), pointer dis_xorigin => null()
 
type(virtualdbltype), pointer dis_yorigin => null()
 
type(virtualdbltype), pointer dis_angrot => null()
 
type(virtualdbl1dtype), pointer dis_xc => null()
 
type(virtualdbl1dtype), pointer dis_yc => null()
 
type(virtualdbl1dtype), pointer dis_top => null()
 
type(virtualdbl1dtype), pointer dis_bot => null()
 
type(virtualdbl1dtype), pointer dis_area => null()
 
type(virtualinttype), pointer moffset => null()
 
type(virtualdbl1dtype), pointer x => null()
 
type(virtualdbl1dtype), pointer x_old => null()
 
type(virtualint1dtype), pointer ibound => null()
 
type(virtualinttype), pointer idsoln => null()
 
integer(i4b) id
 unique identifier matching with the real counterpart More...
 
integer(i4b) container_type
 to identify the actual type of this container More...
 
character(lencomponentname) name
 container name (model, exchange, ...) used in the memory path More...
 
character(lencontextname) vmem_ctx
 prefixes virtual memory located on remote processes More...
 
logical(lgp) is_local
 when true, the physical object resides on the same process. However, some of its variables can still be remote More...
 
logical(lgp) is_active
 when true, this container is being synchronized More...
 
integer(i4b) orig_rank
 the global rank of the process which holds the physical data for this container, for exchanges this is set to be where model1 sits, or if model1 is local, where model2 sits More...
 
type(stlvecintrcv_ranks
 the ranks of processes, other than orig_rank, having this container active (only guaranteed to be complete after synchronization) More...
 
type(listtypevirtual_data_list
 a list with all virtual data items for this container More...
 
type(vdcelementmaptype), dimension(nr_vdc_element_maps) element_maps
 a list with all element maps More...
 
type(vdcelementluttype), dimension(nr_vdc_element_maps) element_luts
 lookup tables from remote index to local index More...
 

Private Member Functions

procedure, private init_virtual_data
 
procedure, private allocate_data
 
procedure, private deallocate_data
 
procedure, private eq_virtual_model
 
procedure, private eq_numerical_model
 
procedure, private add_to_list
 
procedure, private map_scalar
 
procedure, private map_array1d
 
procedure, private map_array2d
 
procedure, private map_internal
 
procedure, private vdc_get_virtual_data
 
procedure, private get_items_for_stage
 

Detailed Description

Definition at line 13 of file VirtualGwfModel.f90.

Member Function/Subroutine Documentation

◆ add_to_list()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::add_to_list
privateinherited

Definition at line 86 of file VirtualDataContainer.f90.

◆ allocate_data()

procedure, private virtualgwfmodelmodule::virtualgwfmodeltype::allocate_data
private

Definition at line 36 of file VirtualGwfModel.f90.

◆ create()

procedure virtualgwfmodelmodule::virtualgwfmodeltype::create

Definition at line 31 of file VirtualGwfModel.f90.

◆ deallocate_data()

procedure, private virtualgwfmodelmodule::virtualgwfmodeltype::deallocate_data
private

Definition at line 37 of file VirtualGwfModel.f90.

◆ destroy()

procedure virtualgwfmodelmodule::virtualgwfmodeltype::destroy

Definition at line 32 of file VirtualGwfModel.f90.

◆ dis_get_nodeuser()

procedure virtualmodelmodule::virtualmodeltype::dis_get_nodeuser
inherited

Definition at line 62 of file VirtualModel.f90.

◆ dis_noder_to_string()

procedure virtualmodelmodule::virtualmodeltype::dis_noder_to_string
inherited

Definition at line 63 of file VirtualModel.f90.

◆ eq_numerical_model()

procedure, private virtualmodelmodule::virtualmodeltype::eq_numerical_model
privateinherited

Definition at line 70 of file VirtualModel.f90.

◆ eq_virtual_model()

procedure, private virtualmodelmodule::virtualmodeltype::eq_virtual_model
privateinherited

Definition at line 69 of file VirtualModel.f90.

◆ get_items_for_stage()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::get_items_for_stage
privateinherited

Definition at line 92 of file VirtualDataContainer.f90.

◆ get_recv_items()

procedure virtualdatacontainermodule::virtualdatacontainertype::get_recv_items
inherited

Definition at line 80 of file VirtualDataContainer.f90.

◆ get_send_items()

procedure virtualdatacontainermodule::virtualdatacontainertype::get_send_items
inherited

Definition at line 79 of file VirtualDataContainer.f90.

◆ get_virtual_data()

procedure virtualdatacontainermodule::virtualdatacontainertype::get_virtual_data
inherited

Definition at line 81 of file VirtualDataContainer.f90.

◆ get_vrt_mem_path()

procedure virtualdatacontainermodule::virtualdatacontainertype::get_vrt_mem_path
inherited

Definition at line 76 of file VirtualDataContainer.f90.

◆ init_virtual_data()

procedure, private virtualgwfmodelmodule::virtualgwfmodeltype::init_virtual_data
private

Definition at line 35 of file VirtualGwfModel.f90.

◆ link_items()

procedure virtualdatacontainermodule::virtualdatacontainertype::link_items
inherited

Definition at line 74 of file VirtualDataContainer.f90.

◆ map()

generic virtualdatacontainermodule::virtualdatacontainertype::map
inherited

Definition at line 72 of file VirtualDataContainer.f90.

Here is the call graph for this function:

◆ map_array1d()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::map_array1d
privateinherited

Definition at line 88 of file VirtualDataContainer.f90.

◆ map_array2d()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::map_array2d
privateinherited

Definition at line 89 of file VirtualDataContainer.f90.

◆ map_internal()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::map_internal
privateinherited

Definition at line 90 of file VirtualDataContainer.f90.

◆ map_scalar()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::map_scalar
privateinherited

Definition at line 87 of file VirtualDataContainer.f90.

◆ operator()

generic virtualmodelmodule::virtualmodeltype::operator
inherited

Definition at line 60 of file VirtualModel.f90.

Here is the call graph for this function:

◆ prepare_stage()

procedure virtualgwfmodelmodule::virtualgwfmodeltype::prepare_stage

Definition at line 33 of file VirtualGwfModel.f90.

◆ print_items()

procedure virtualdatacontainermodule::virtualdatacontainertype::print_items
inherited

Definition at line 82 of file VirtualDataContainer.f90.

◆ set()

procedure virtualdatacontainermodule::virtualdatacontainertype::set
inherited

Definition at line 84 of file VirtualDataContainer.f90.

◆ set_element_map()

procedure virtualdatacontainermodule::virtualdatacontainertype::set_element_map
inherited

Definition at line 75 of file VirtualDataContainer.f90.

◆ set_orig_rank()

procedure virtualdatacontainermodule::virtualdatacontainertype::set_orig_rank
inherited

Definition at line 78 of file VirtualDataContainer.f90.

◆ vdc_create()

procedure virtualdatacontainermodule::virtualdatacontainertype::vdc_create
inherited

Definition at line 71 of file VirtualDataContainer.f90.

◆ vdc_get_virtual_data()

procedure, private virtualdatacontainermodule::virtualdatacontainertype::vdc_get_virtual_data
privateinherited

Definition at line 91 of file VirtualDataContainer.f90.

Member Data Documentation

◆ buy_dense

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::buy_dense => null()

Definition at line 28 of file VirtualGwfModel.f90.

28  type(VirtualDbl1dType), pointer :: buy_dense => null()

◆ con_anglex

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::con_anglex => null()
inherited

Definition at line 32 of file VirtualModel.f90.

32  type(VirtualDbl1dType), pointer :: con_anglex => null()

◆ con_cl1

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::con_cl1 => null()
inherited

Definition at line 30 of file VirtualModel.f90.

30  type(VirtualDbl1dType), pointer :: con_cl1 => null()

◆ con_cl2

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::con_cl2 => null()
inherited

Definition at line 31 of file VirtualModel.f90.

31  type(VirtualDbl1dType), pointer :: con_cl2 => null()

◆ con_hwva

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::con_hwva => null()
inherited

Definition at line 29 of file VirtualModel.f90.

29  type(VirtualDbl1dType), pointer :: con_hwva => null()

◆ con_ia

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::con_ia => null()
inherited

Definition at line 25 of file VirtualModel.f90.

25  type(VirtualInt1dType), pointer :: con_ia => null()

◆ con_ianglex

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::con_ianglex => null()
inherited

Definition at line 24 of file VirtualModel.f90.

24  type(VirtualIntType), pointer :: con_ianglex => null()

◆ con_ihc

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::con_ihc => null()
inherited

Definition at line 28 of file VirtualModel.f90.

28  type(VirtualInt1dType), pointer :: con_ihc => null()

◆ con_ja

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::con_ja => null()
inherited

Definition at line 26 of file VirtualModel.f90.

26  type(VirtualInt1dType), pointer :: con_ja => null()

◆ con_jas

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::con_jas => null()
inherited

Definition at line 27 of file VirtualModel.f90.

27  type(VirtualInt1dType), pointer :: con_jas => null()

◆ container_type

integer(i4b) virtualdatacontainermodule::virtualdatacontainertype::container_type
inherited

Definition at line 55 of file VirtualDataContainer.f90.

55  integer(I4B) :: container_type !< to identify the actual type of this container

◆ dis_angrot

type(virtualdbltype), pointer virtualmodelmodule::virtualmodeltype::dis_angrot => null()
inherited

Definition at line 42 of file VirtualModel.f90.

42  type(VirtualDblType), pointer :: dis_angrot => null()

◆ dis_area

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_area => null()
inherited

Definition at line 47 of file VirtualModel.f90.

47  type(VirtualDbl1dType), pointer :: dis_area => null()

◆ dis_bot

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_bot => null()
inherited

Definition at line 46 of file VirtualModel.f90.

46  type(VirtualDbl1dType), pointer :: dis_bot => null()

◆ dis_ndim

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::dis_ndim => null()
inherited

Definition at line 34 of file VirtualModel.f90.

34  type(VirtualIntType), pointer :: dis_ndim => null()

◆ dis_nja

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::dis_nja => null()
inherited

Definition at line 38 of file VirtualModel.f90.

38  type(VirtualIntType), pointer :: dis_nja => null()

◆ dis_njas

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::dis_njas => null()
inherited

Definition at line 39 of file VirtualModel.f90.

39  type(VirtualIntType), pointer :: dis_njas => null()

◆ dis_nodes

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::dis_nodes => null()
inherited

Definition at line 35 of file VirtualModel.f90.

35  type(VirtualIntType), pointer :: dis_nodes => null()

◆ dis_nodesuser

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::dis_nodesuser => null()
inherited

Definition at line 36 of file VirtualModel.f90.

36  type(VirtualIntType), pointer :: dis_nodesuser => null()

◆ dis_nodeuser

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_nodeuser => null()
inherited

Definition at line 37 of file VirtualModel.f90.

37  type(VirtualInt1dType), pointer :: dis_nodeuser => null()

◆ dis_top

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_top => null()
inherited

Definition at line 45 of file VirtualModel.f90.

45  type(VirtualDbl1dType), pointer :: dis_top => null()

◆ dis_xc

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_xc => null()
inherited

Definition at line 43 of file VirtualModel.f90.

43  type(VirtualDbl1dType), pointer :: dis_xc => null()

◆ dis_xorigin

type(virtualdbltype), pointer virtualmodelmodule::virtualmodeltype::dis_xorigin => null()
inherited

Definition at line 40 of file VirtualModel.f90.

40  type(VirtualDblType), pointer :: dis_xorigin => null()

◆ dis_yc

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::dis_yc => null()
inherited

Definition at line 44 of file VirtualModel.f90.

44  type(VirtualDbl1dType), pointer :: dis_yc => null()

◆ dis_yorigin

type(virtualdbltype), pointer virtualmodelmodule::virtualmodeltype::dis_yorigin => null()
inherited

Definition at line 41 of file VirtualModel.f90.

41  type(VirtualDblType), pointer :: dis_yorigin => null()

◆ element_luts

type(vdcelementluttype), dimension(nr_vdc_element_maps) virtualdatacontainermodule::virtualdatacontainertype::element_luts
inherited

Definition at line 69 of file VirtualDataContainer.f90.

69  type(VdcElementLutType), dimension(NR_VDC_ELEMENT_MAPS) :: element_luts !< lookup tables from remote index to local index

◆ element_maps

type(vdcelementmaptype), dimension(nr_vdc_element_maps) virtualdatacontainermodule::virtualdatacontainertype::element_maps
inherited

Definition at line 68 of file VirtualDataContainer.f90.

68  type(VdcElementMapType), dimension(NR_VDC_ELEMENT_MAPS) :: element_maps !< a list with all element maps

◆ ibound

type(virtualint1dtype), pointer virtualmodelmodule::virtualmodeltype::ibound => null()
inherited

Definition at line 52 of file VirtualModel.f90.

52  type(VirtualInt1dType), pointer :: ibound => null()

◆ id

integer(i4b) virtualdatacontainermodule::virtualdatacontainertype::id
inherited

Definition at line 54 of file VirtualDataContainer.f90.

54  integer(I4B) :: id !< unique identifier matching with the real counterpart

◆ idsoln

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::idsoln => null()
inherited

Definition at line 54 of file VirtualModel.f90.

54  type(VirtualIntType), pointer :: idsoln => null()

◆ inbuy

type(virtualinttype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::inbuy => null()

Definition at line 19 of file VirtualGwfModel.f90.

19  type(VirtualIntType), pointer :: inbuy => null()

◆ is_active

logical(lgp) virtualdatacontainermodule::virtualdatacontainertype::is_active
inherited

Definition at line 60 of file VirtualDataContainer.f90.

60  logical(LGP) :: is_active !< when true, this container is being synchronized

◆ is_local

logical(lgp) virtualdatacontainermodule::virtualdatacontainertype::is_local
inherited

Definition at line 58 of file VirtualDataContainer.f90.

58  logical(LGP) :: is_local !< when true, the physical object resides on the same process. However,

◆ local_model

class(numericalmodeltype), pointer virtualmodelmodule::virtualmodeltype::local_model
inherited

Definition at line 22 of file VirtualModel.f90.

22  class(NumericalModelType), pointer :: local_model

◆ moffset

type(virtualinttype), pointer virtualmodelmodule::virtualmodeltype::moffset => null()
inherited

Definition at line 49 of file VirtualModel.f90.

49  type(VirtualIntType), pointer :: moffset => null()

◆ name

character(lencomponentname) virtualdatacontainermodule::virtualdatacontainertype::name
inherited

Definition at line 56 of file VirtualDataContainer.f90.

56  character(LENCOMPONENTNAME) :: name !< container name (model, exchange, ...) used in the memory path

◆ npf_angle1

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_angle1 => null()

Definition at line 24 of file VirtualGwfModel.f90.

24  type(VirtualDbl1dType), pointer :: npf_angle1 => null()

◆ npf_angle2

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_angle2 => null()

Definition at line 25 of file VirtualGwfModel.f90.

25  type(VirtualDbl1dType), pointer :: npf_angle2 => null()

◆ npf_angle3

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_angle3 => null()

Definition at line 26 of file VirtualGwfModel.f90.

26  type(VirtualDbl1dType), pointer :: npf_angle3 => null()

◆ npf_iangle1

type(virtualinttype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_iangle1 => null()

Definition at line 15 of file VirtualGwfModel.f90.

15  type(VirtualIntType), pointer :: npf_iangle1 => null()

◆ npf_iangle2

type(virtualinttype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_iangle2 => null()

Definition at line 16 of file VirtualGwfModel.f90.

16  type(VirtualIntType), pointer :: npf_iangle2 => null()

◆ npf_iangle3

type(virtualinttype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_iangle3 => null()

Definition at line 17 of file VirtualGwfModel.f90.

17  type(VirtualIntType), pointer :: npf_iangle3 => null()

◆ npf_icelltype

type(virtualint1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_icelltype => null()

Definition at line 20 of file VirtualGwfModel.f90.

20  type(VirtualInt1dType), pointer :: npf_icelltype => null()

◆ npf_iwetdry

type(virtualinttype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_iwetdry => null()

Definition at line 18 of file VirtualGwfModel.f90.

18  type(VirtualIntType), pointer :: npf_iwetdry => null()

◆ npf_k11

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_k11 => null()

Definition at line 21 of file VirtualGwfModel.f90.

21  type(VirtualDbl1dType), pointer :: npf_k11 => null()

◆ npf_k22

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_k22 => null()

Definition at line 22 of file VirtualGwfModel.f90.

22  type(VirtualDbl1dType), pointer :: npf_k22 => null()

◆ npf_k33

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_k33 => null()

Definition at line 23 of file VirtualGwfModel.f90.

23  type(VirtualDbl1dType), pointer :: npf_k33 => null()

◆ npf_wetdry

type(virtualdbl1dtype), pointer virtualgwfmodelmodule::virtualgwfmodeltype::npf_wetdry => null()

Definition at line 27 of file VirtualGwfModel.f90.

27  type(VirtualDbl1dType), pointer :: npf_wetdry => null()

◆ orig_rank

integer(i4b) virtualdatacontainermodule::virtualdatacontainertype::orig_rank
inherited

Definition at line 61 of file VirtualDataContainer.f90.

61  integer(I4B) :: orig_rank !< the global rank of the process which holds the physical data for this container,

◆ rcv_ranks

type(stlvecint) virtualdatacontainermodule::virtualdatacontainertype::rcv_ranks
inherited

Definition at line 64 of file VirtualDataContainer.f90.

64  type(STLVecInt) :: rcv_ranks !< the ranks of processes, other than orig_rank, having this container active

◆ virtual_data_list

type(listtype) virtualdatacontainermodule::virtualdatacontainertype::virtual_data_list
inherited

Definition at line 67 of file VirtualDataContainer.f90.

67  type(ListType) :: virtual_data_list !< a list with all virtual data items for this container

◆ vmem_ctx

character(lencontextname) virtualdatacontainermodule::virtualdatacontainertype::vmem_ctx
inherited

Definition at line 57 of file VirtualDataContainer.f90.

57  character(LENCONTEXTNAME) :: vmem_ctx !< prefixes virtual memory located on remote processes

◆ x

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::x => null()
inherited

Definition at line 50 of file VirtualModel.f90.

50  type(VirtualDbl1dType), pointer :: x => null()

◆ x_old

type(virtualdbl1dtype), pointer virtualmodelmodule::virtualmodeltype::x_old => null()
inherited

Definition at line 51 of file VirtualModel.f90.

51  type(VirtualDbl1dType), pointer :: x_old => null()

The documentation for this type was generated from the following file: