100 class(VirtualGwtModelType) :: this
101 integer(I4B) :: stage
103 integer(I4B) :: nr_nodes, nr_conns
106 call this%VirtualModelType%prepare_stage(stage)
111 if (stage == stg_aft_mdl_df)
then
113 call this%map(this%dsp_idiffc%base(), (/stg_aft_mdl_df/))
114 call this%map(this%dsp_idisp%base(), (/stg_aft_mdl_df/))
115 call this%map(this%indsp%base(), (/stg_aft_mdl_df/))
116 call this%map(this%inmst%base(), (/stg_aft_mdl_df/))
118 else if (stage == stg_bfr_con_ar)
then
120 nr_nodes = this%element_maps(map_node_type)%nr_virt_elems
121 nr_conns = this%element_maps(map_conn_type)%nr_virt_elems
123 call this%map(this%x%base(), nr_nodes, &
124 (/stg_bfr_con_ar, stg_bfr_exg_ad, stg_bfr_exg_cf/))
125 call this%map(this%ibound%base(), nr_nodes, (/stg_bfr_con_ar/))
127 if (this%dsp_idiffc%get() > 0)
then
128 call this%map(this%dsp_diffc%base(), nr_nodes, (/stg_bfr_con_ar/))
131 if (this%dsp_idisp%get() > 0)
then
132 call this%map(this%dsp_alh%base(), nr_nodes, (/stg_bfr_con_ar/))
133 call this%map(this%dsp_alv%base(), nr_nodes, (/stg_bfr_con_ar/))
134 call this%map(this%dsp_ath1%base(), nr_nodes, (/stg_bfr_con_ar/))
135 call this%map(this%dsp_ath2%base(), nr_nodes, (/stg_bfr_con_ar/))
136 call this%map(this%dsp_atv%base(), nr_nodes, (/stg_bfr_con_ar/))
139 call this%map(this%fmi_gwfhead%base(), nr_nodes, (/stg_bfr_exg_ad/))
140 call this%map(this%fmi_gwfsat%base(), nr_nodes, (/stg_bfr_exg_ad/))
141 call this%map(this%fmi_gwfspdis%base(), 3, nr_nodes, (/stg_bfr_exg_ad/))
142 call this%map(this%fmi_gwfflowja%base(), nr_conns, (/stg_bfr_exg_ad/))
144 if (this%indsp%get() > 0 .and. this%inmst%get() > 0)
then
145 call this%map(this%mst_thetam%base(), nr_nodes, (/stg_aft_con_ar/))