ocean_meke_destroy Subroutine

private subroutine ocean_meke_destroy(this)

Type Bound

ocean_meke_t

Arguments

Type IntentOptional Attributes Name
class(ocean_meke_t), intent(inout) :: this

Source Code

   subroutine ocean_meke_destroy(this)
      class(ocean_meke_t), intent(inout) :: this
      this%is_init = .false.
      if (allocated(this%meke)) deallocate (this%meke)
      if (allocated(this%kh_diff)) deallocate (this%kh_diff)
      if (allocated(this%le)) deallocate (this%le)
      if (allocated(this%ku)) deallocate (this%ku)
      if (allocated(this%i_mass)) deallocate (this%i_mass)
      if (allocated(this%depth_tot)) deallocate (this%depth_tot)
      if (allocated(this%bottom_fac2)) deallocate (this%bottom_fac2)
      if (allocated(this%barotr_fac2)) deallocate (this%barotr_fac2)
      if (allocated(this%src)) deallocate (this%src)
      if (allocated(this%uflux)) deallocate (this%uflux)
      if (allocated(this%vflux)) deallocate (this%vflux)
      if (allocated(this%del2)) deallocate (this%del2)
      if (allocated(this%mass_ws)) deallocate (this%mass_ws)
      if (allocated(this%u_bbl2)) deallocate (this%u_bbl2)
      if (allocated(this%ke_diss_ws)) deallocate (this%ke_diss_ws)
      if (allocated(this%rd_ws)) deallocate (this%rd_ws)
      if (allocated(this%f_centre)) deallocate (this%f_centre)
      if (allocated(this%sn_u_ws)) deallocate (this%sn_u_ws)
      if (allocated(this%sn_v_ws)) deallocate (this%sn_v_ws)
      if (allocated(this%baro_hu)) deallocate (this%baro_hu)
      if (allocated(this%baro_hv)) deallocate (this%baro_hv)
      this%nx_total = 0
      this%ny_total = 0
      this%nz_ml = 0
   end subroutine ocean_meke_destroy