!     -*- f90 -*-
!     This file is autogenerated with f2py (version:2)
!     It contains Fortran 90 wrappers to fortran functions.

      subroutine f2py_meshparams_getdims_gnid(r,s,f2pysetdata,flag)
      use meshparams, only: d => gnid

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_gnid
      subroutine f2py_meshparams_getdims_fvnid(r,s,f2pysetdata,flag)
      use meshparams, only: d => fvnid

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_fvnid
      subroutine f2py_meshparams_getdims_fvnnb(r,s,f2pysetdata,flag)
      use meshparams, only: d => fvnnb

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_fvnnb
      subroutine f2py_meshparams_getdims_fvarea(r,s,f2pysetdata,flag)
      use meshparams, only: d => fvarea

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_fvarea
      subroutine f2py_meshparams_getdims_fvelgt(r,s,f2pysetdata,flag)
      use meshparams, only: d => fvelgt

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_fvelgt
      subroutine f2py_meshparams_getdims_fvvdist(r,s,f2pysetdata,flag)
      use meshparams, only: d => fvvdist

      integer flag
      external f2pysetdata
      logical ns
      integer r,i
      integer(8) s(*)
      ns = .FALSE.
      if (allocated(d)) then
         do i=1,r
            if ((size(d,i).ne.s(i)).and.(s(i).ge.0)) then
               ns = .TRUE.
            end if
         end do
         if (ns) then
            deallocate(d)
         end if
      end if
      if ((.not.allocated(d)).and.(s(1).ge.1)) then
       allocate(d(s(1),s(2)))
      end if
      if (allocated(d)) then
         do i=1,r
            s(i) = size(d,i)
         end do
      end if
      flag = 1
      call f2pysetdata(d,allocated(d))
      end subroutine f2py_meshparams_getdims_fvvdist
      
      subroutine f2pyinitmeshparams(f2pysetupfunc)
      use meshparams, only : nlocal
      use meshparams, only : eps
      use meshparams, only : gnid
      use meshparams, only : fvnid
      use meshparams, only : fvnnb
      use meshparams, only : fvarea
      use meshparams, only : fvelgt
      use meshparams, only : fvvdist
      external f2pysetupfunc
      external f2py_meshparams_getdims_gnid
      external f2py_meshparams_getdims_fvnid
      external f2py_meshparams_getdims_fvnnb
      external f2py_meshparams_getdims_fvarea
      external f2py_meshparams_getdims_fvelgt
      external f2py_meshparams_getdims_fvvdist
      call f2pysetupfunc(nlocal,eps,f2py_meshparams_getdims_gnid,f2py_me&
     &shparams_getdims_fvnid,f2py_meshparams_getdims_fvnnb,f2py_meshpara&
     &ms_getdims_fvarea,f2py_meshparams_getdims_fvelgt,f2py_meshparams_g&
     &etdims_fvvdist)
      end subroutine f2pyinitmeshparams


