101 class(VirtualTspExchangeType) :: this
102 integer(I4B) :: stage
104 integer(I4B) :: nexg, nmax
107 call this%VirtualExchangeType%prepare_stage(stage)
109 if (stage == stg_aft_exg_df)
then
112 call this%map(this%inmvt%base(), (/stg_aft_exg_df/))
114 else if (stage == stg_aft_con_cr)
then
117 if (this%inmvt%get() > 0)
then
118 this%has_mvt = .true.
121 else if (stage == stg_bfr_con_ar)
then
123 nexg = this%nexg%get()
124 call this%map(this%gwfsimvals%base(), nexg, (/stg_bfr_exg_ad/))
127 if (this%has_mvt .and. this%is_local)
then
128 call this%map(this%mvt_maxmvt%base(), (/stg_bfr_con_ar/))
131 else if (stage == stg_bfr_exg_ad)
then
135 if (this%has_mvt .and. this%is_local) nmax = this%mvt_maxmvt%get()
138 if (.not. this%quantities_mapped)
then
140 call this%map(this%mvt_quantity_m1%base(), nmax, (/stg_bfr_exg_fc/))
141 call this%map(this%mvt_quantity_m2%base(), nmax, (/stg_bfr_exg_fc/))
143 call this%map(this%mvt_quantity_m1%base(), 0, (/stg_never/))
144 call this%map(this%mvt_quantity_m2%base(), 0, (/stg_never/))
146 this%quantities_mapped = .true.