예제 #1
0
파일: mp.py 프로젝트: visr/flopy
    def __init__(self, modelname='modpathtest', simfile_ext='mpsim', namefile_ext='mpnam',
                 exe_name='mp6.exe', modflowmodel=None, 
                 dis_file = None, dis_unit=87, head_file = None, budget_file = None, 
                 model_ws=None, external_path=None, verbose=False,
                 load=True, listunit=7):
        """
        Model constructor.

        """
        BaseModel.__init__(self, modelname, simfile_ext, exe_name, model_ws=model_ws)
        self.heading = '# Name file for Modpath, generated by Flopy.'
        self.__mf = modflowmodel
        self.lst = ModpathList(self, listunit=listunit)
        self.mpnamefile = '{}.{}'.format(self.name, namefile_ext)
        self.mpbas_file = '{}.mpbas'.format(modelname)
        self.dis_file = dis_file
        self.dis_unit = dis_unit
        self.head_file = head_file
        self.budget_file = budget_file
        self.__sim = None
        self.free_format = False
        self.array_format = 'modflow'
        self.external_path = external_path
        self.external = False
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []
        self.load = load
        self.__next_ext_unit = 500
        if external_path is not None:
            assert os.path.exists(external_path),'external_path does not exist'
            self.external = True         
        self.verbose = verbose            
        return
예제 #2
0
파일: mt.py 프로젝트: 2012konrad77/flopy
 def __init__(self, modelname='mt3dmstest', namefile_ext='nam',
              modflowmodel=None, ftlfilename=None,
              model_ws=None, external_path=None,verbose=False,
              load=True, listunit=7, exe_name = 'mt3dms.exe', ):
     BaseModel.__init__(self, modelname, namefile_ext, model_ws=model_ws,
                        exe_name=exe_name)
     self.heading = '# Name file for MT3DMS, generated by Flopy.'
     self.__mf = modflowmodel
     self.lst = Mt3dList(self, listunit=listunit)
     self.ftlfilename = ftlfilename
     self.__adv = None
     self.__btn = None        
     self.__dsp = None
     self.__gcg = None
     self.__rct = None
     self.__ssm = None
     self.free_format = False
     self.external_path = external_path
     self.external = False
     self.external_fnames = []
     self.external_units = []
     self.external_binflag = []
     self.load = load
     self.__next_ext_unit = 500
     if external_path is not None:
         if os.path.exists(external_path):
             print("Note: external_path " + str(external_path) +\
                 " already exists")
         #assert os.path.exists(external_path),'external_path does not exist'
         else:
             os.mkdir(external_path)
         self.external = True         
     self.verbose = verbose            
     return
예제 #3
0
    def __init__(self,
                 modelname='modpath3DUtest',
                 primfile_ext='prim3du',
                 version='modpath3du',
                 exe_name='mp3du.exe',
                 modflowmodel=None,
                 dis_file=None,
                 dis_unit=87,
                 head_file=None,
                 budget_file=None,
                 model_ws=None,
                 external_path=None,
                 verbose=False,
                 load=True,
                 listunit=7):
        """
		Model constructor
		"""

        BaseModel.__init__(self,
                           modelname,
                           primfile_ext,
                           exe_name,
                           model_ws=model_ws)

        self.version_type(version)
        self.set_version(version)

        self.__mf = modflowmodel
        self.lst = 3
예제 #4
0
파일: mp.py 프로젝트: joycezw/flopy
 def __init__(self,
              modelname='modpathtest',
              namefile_ext='mpnam',
              modflowmodel=None,
              dis_file=None,
              head_file=None,
              budget_file=None,
              model_ws=None,
              external_path=None,
              verbose=False,
              load=True,
              listunit=7):
     BaseModel.__init__(self, modelname, namefile_ext, model_ws=model_ws)
     self.heading = '# Name file for Modpath, generated by Flopy.'
     self.__mf = modflowmodel
     self.lst = ModpathList(self, listunit=listunit)
     self.mpbas_file = '{}.mpbas'.format(modelname)
     self.dis_file = dis_file
     self.head_file = head_file
     self.budget_file = budget_file
     self.__sim = None
     self.free_format = False
     self.external_path = external_path
     self.external = False
     self.external_fnames = []
     self.external_units = []
     self.external_binflag = []
     self.load = load
     self.__next_ext_unit = 500
     if external_path is not None:
         assert os.path.exists(
             external_path), 'external_path does not exist'
         self.external = True
     self.verbose = verbose
     return
예제 #5
0
파일: mt.py 프로젝트: visr/flopy
    def __init__(self, modelname='mt3dtest', namefile_ext='nam',
                 modflowmodel=None, ftlfilename=None,
                 version='mt3dms', exe_name='mt3dms.exe',
                 structured=True, listunit=2, model_ws='.', external_path=None,
                 verbose=False, load=True, silent=0):

        # Call constructor for parent object
        BaseModel.__init__(self, modelname, namefile_ext, exe_name, model_ws,
                           structured=structured)

        # Set attributes
        version_types = ('mt3dms', 'mt3d-usgs')
        self.heading = '# Name file for ' + version + ', generated by Flopy.'
        self.version = version.lower()
        self.lst = Mt3dList(self, listunit=listunit)
        self.mf = modflowmodel
        self.ftlfilename = ftlfilename

        # external option stuff
        self.free_format = False
        self.array_format = 'mt3d'
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []
        self.external = False
        self.verbose = verbose
        self.load = load
        # the starting external data unit number
        self.__next_ext_unit = 1000
        if external_path is not None:
            assert model_ws == '.', "ERROR: external cannot be used " + \
                                    "with model_ws"

            # external_path = os.path.join(model_ws, external_path)
            if os.path.exists(external_path):
                print("Note: external_path " + str(external_path) +
                      " already exists")
            # assert os.path.exists(external_path),'external_path does not exist'
            else:
                os.mkdir(external_path)
            self.external = True
        self.external_path = external_path
        self.verbose = verbose
        self.silent = silent

        # Create a dictionary to map package with package object.
        # This is used for loading models.
        self.mfnam_packages = {
            'btn': flopy.mt3d.Mt3dBtn,
            'adv': flopy.mt3d.Mt3dAdv,
            'dsp': flopy.mt3d.Mt3dDsp,
            'ssm': flopy.mt3d.Mt3dSsm,
            'rct': flopy.mt3d.Mt3dRct,
            'gcg': flopy.mt3d.Mt3dGcg,
            'tob': flopy.mt3d.Mt3dTob,
            'phc': flopy.mt3d.Mt3dPhc,
        }
        return
예제 #6
0
파일: mf.py 프로젝트: AgnesRiviere/flopy
    def set_name(self, value):
        # Overrides BaseModel's setter for name property
        BaseModel.set_name(self, value)

        for i in range(len(self.glo.extension)):
            self.glo.file_name[i] = self.name + '.' + self.glo.extension[i]

        for i in range(len(self.lst.extension)):
            self.lst.file_name[i] = self.name + '.' + self.lst.extension[i]
예제 #7
0
파일: mf.py 프로젝트: Kirubaharan/flopy
    def set_name(self, value):
        # Overrides BaseModel's setter for name property
        BaseModel.set_name(self, value)

        for i in range(len(self.glo.extension)):
            self.glo.file_name[i] = self.name + '.' + self.glo.extension[i]

        for i in range(len(self.lst.extension)):
            self.lst.file_name[i] = self.name + '.' + self.lst.extension[i]
예제 #8
0
파일: mf.py 프로젝트: AgnesRiviere/flopy
    def __init__(self, modelname = 'modflowtest', namefile_ext = 'nam',
                 version='mf2005', exe_name='mf2005.exe',
                 listunit=2, model_ws=None,external_path=None,
                 verbose=False, load=True, silent = 0):
        '''
        external_path - used to activate external array option
        external_binflag -  controls ASCII vs. binary for external property arrays
                            does not influence data added using add_external()
        load - flag to control loading of existing arrays into FLOPY or simple passing
               string names through

        verbose controls Package _repr_ screen output
        '''
        BaseModel.__init__(self, modelname, namefile_ext, exe_name, model_ws)
        self.heading = '# Name file for ' + version + ', generated by Flopy.'
        if version == 'mf2k':
            self.glo = ModflowGlobal(self)
        self.lst = ModflowList(self, unitnumber=listunit)
        self.version = version  # So that we can do something different for mf2005
        #--external option stuff
        self.free_format = True
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []
        self.external_path = external_path
        self.external = False
        self.load = load
        #--the starting external data unit number
        self.__next_ext_unit = 1000
        if external_path is not None:
            assert os.path.exists(external_path),'external_path does not exist'
            self.external = True
        self.verbose = verbose
        self.silent = silent

        #Create a dictionary to map package with package object.
        #This is used for loading models.
        self.mfnam_packages = {
            "bas6": flopy.modflow.ModflowBas,
            "dis": flopy.modflow.ModflowDis,
            "lpf": flopy.modflow.ModflowLpf,
            "wel": flopy.modflow.ModflowWel,
            "drn": flopy.modflow.ModflowDrn,
            "rch": flopy.modflow.ModflowRch,
            "ghb": flopy.modflow.ModflowGhb,
            "riv": flopy.modflow.ModflowRiv,
            "pcg": flopy.modflow.ModflowPcg,
            "oc" : flopy.modflow.ModflowOc,
            "uzf": flopy.modflow.ModflowUzf1,
            "upw": flopy.modflow.ModflowUpw
                                }
        return
예제 #9
0
파일: swt.py 프로젝트: visr/flopy
 def __init__(self, modelname='mt3dmstest', namefile_ext='nam', 
              modflowmodel=None, mt3dmsmodel=None, 
              exe_name='swt_v4.exe', model_ws = None,verbose=False,
              external_path=None):
     BaseModel.__init__(self, modelname, namefile_ext, exe_name=exe_name, 
                        model_ws=model_ws)
     self.heading = '# Name file for MT3DMS, generated by Flopy.'
     self.__mf = modflowmodel
     self.__mt = mt3dmsmodel
     self.lst = SeawatList(self)
     self.__vdf = None
     self.verbose = verbose
     self.external_path = external_path
     return
예제 #10
0
 def __init__(self, modelname='mt3dmstest', namefile_ext='nam', 
              modflowmodel=None, mt3dmsmodel=None, 
              exe_name='swt_v4.exe', model_ws = None,verbose=False,
              external_path=None):
     BaseModel.__init__(self, modelname, namefile_ext, exe_name=exe_name, 
                        model_ws=model_ws)
     self.heading = '# Name file for MT3DMS, generated by Flopy.'
     self.__mf = modflowmodel
     self.__mt = mt3dmsmodel
     self.lst = SeawatList(self)
     self.__vdf = None
     self.verbose = verbose
     self.external_path = external_path
     return
예제 #11
0
파일: mt.py 프로젝트: joycezw/flopy
 def __init__(
     self,
     modelname='mt3dmstest',
     namefile_ext='nam',
     modflowmodel=None,
     ftlfilename=None,
     model_ws=None,
     external_path=None,
     verbose=False,
     load=True,
     listunit=7,
     exe_name='mt3dms.exe',
 ):
     BaseModel.__init__(self,
                        modelname,
                        namefile_ext,
                        model_ws=model_ws,
                        exe_name=exe_name)
     self.heading = '# Name file for MT3DMS, generated by Flopy.'
     self.__mf = modflowmodel
     self.lst = Mt3dList(self, listunit=listunit)
     self.ftlfilename = ftlfilename
     self.__adv = None
     self.__btn = None
     self.__dsp = None
     self.__gcg = None
     self.__rct = None
     self.__ssm = None
     self.free_format = False
     self.external_path = external_path
     self.external = False
     self.external_fnames = []
     self.external_units = []
     self.external_binflag = []
     self.load = load
     self.__next_ext_unit = 500
     if external_path is not None:
         if os.path.exists(external_path):
             print "Note: external_path " + str(external_path) +\
                 " already exists"
         #assert os.path.exists(external_path),'external_path does not exist'
         else:
             os.mkdir(external_path)
         self.external = True
     self.verbose = verbose
     return
예제 #12
0
파일: mf.py 프로젝트: visr/flopy
    def __init__(self, modelname='modflowtest', namefile_ext='nam',
                 version='mf2005', exe_name='mf2005.exe',
                 structured=True, listunit=2, model_ws='.', external_path=None,
                 verbose=False):
        BaseModel.__init__(self, modelname, namefile_ext, exe_name, model_ws,
                           structured=structured)
        version_types = ('mf2k', 'mf2005', 'mfnwt', 'mfusg')
        self.heading = '# Name file for ' + version + ', generated by Flopy.'
        self.version = version.lower()
        if self.version == 'mf2k':
            self.glo = ModflowGlobal(self)
        self.lst = ModflowList(self, unitnumber=listunit)
        # -- check if unstructured is specified for something
        # other than mfusg is specified
        if not self.structured:
            assert 'mfusg' in self.version, 'structured=False can only be specified for mfusg models'

        # external option stuff
        self.free_format = True
        self.array_format = 'modflow'
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []

        self.verbose = verbose

        self.load_fail = False
        # the starting external data unit number
        self.__next_ext_unit = 1000
        if external_path is not None:
            if os.path.exists(os.path.join(model_ws, external_path)):
                print("Note: external_path " + str(external_path) +
                      " already exists")
            else:
                os.makedirs(os.path.join(model_ws,external_path))
        self.external_path = external_path
        self.verbose = verbose
        self.mfpar = ModflowPar()

        # Create a dictionary to map package with package object.
        # This is used for loading models.
        self.mfnam_packages = {
            "zone": flopy.modflow.ModflowZon,
            "mult": flopy.modflow.ModflowMlt,
            "pval": flopy.modflow.ModflowPval,
            "bas6": flopy.modflow.ModflowBas,
            "dis": flopy.modflow.ModflowDis,
            "bcf6": flopy.modflow.ModflowBcf,
            "lpf": flopy.modflow.ModflowLpf,
            "hfb6": flopy.modflow.ModflowHfb,
            "chd": flopy.modflow.ModflowChd,
            "wel": flopy.modflow.ModflowWel,
            "drn": flopy.modflow.ModflowDrn,
            "rch": flopy.modflow.ModflowRch,
            "evt": flopy.modflow.ModflowEvt,
            "ghb": flopy.modflow.ModflowGhb,
            "gmg": flopy.modflow.ModflowGmg,
            "lmt6": flopy.modflow.ModflowLmt,
            "lmt7": flopy.modflow.ModflowLmt,
            "riv": flopy.modflow.ModflowRiv,
            "str": flopy.modflow.ModflowStr,
            "swi2": flopy.modflow.ModflowSwi2,
            "pcg": flopy.modflow.ModflowPcg,
            "pcgn": flopy.modflow.ModflowPcgn,
            "nwt": flopy.modflow.ModflowNwt,
            "pks": flopy.modflow.ModflowPks,
            "sfr": flopy.modflow.ModflowSfr2,
            "sip": flopy.modflow.ModflowSip,
            "sor": flopy.modflow.ModflowSor,
            "de4": flopy.modflow.ModflowDe4,
            "oc": flopy.modflow.ModflowOc,
            "uzf": flopy.modflow.ModflowUzf1,
            "upw": flopy.modflow.ModflowUpw,
            "sub": flopy.modflow.ModflowSub,
            "swt": flopy.modflow.ModflowSwt,
            "hyd": flopy.modflow.ModflowHyd
        }
        return
예제 #13
0
    def __init__(self, modelname='modflowtest', namefile_ext='nam',
                 version='mf2005', exe_name='mf2005.exe',
                 structured=True,
                 listunit=2, model_ws='.', external_path=None,
                 verbose=False, load=True, silent=0):
        BaseModel.__init__(self, modelname, namefile_ext, exe_name, model_ws, structured=structured)
        version_types = ('mf2k', 'mf2005', 'mfnwt', 'mfusg')
        self.heading = '# Name file for ' + version + ', generated by Flopy.'
        self.version = version.lower()
        if self.version == 'mf2k':
            self.glo = ModflowGlobal(self)
        self.lst = ModflowList(self, unitnumber=listunit)
        # -- check if unstructured is specified for something
        #    other than mfusg is specified
        if not self.structured:
            assert 'mfusg' in self.version, 'structured=False can only be specified for mfusg models'

        # external option stuff
        self.free_format = True
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []
        self.external = False
        self.verbose = verbose
        self.load = load
        # the starting external data unit number
        self.__next_ext_unit = 1000
        if external_path is not None:
            assert model_ws == '.', "ERROR: external cannot be used " +\
                "with model_ws"

            #external_path = os.path.join(model_ws, external_path)
            if os.path.exists(external_path):
                print("Note: external_path " + str(external_path) +
                    " already exists")
            #assert os.path.exists(external_path),'external_path does not exist'
            else:
                os.mkdir(external_path)
            self.external = True
        self.external_path = external_path
        self.verbose = verbose
        self.silent = silent
        self.mfpar = ModflowPar()

        # Create a dictionary to map package with package object.
        # This is used for loading models.
        self.mfnam_packages = {
            "zone": flopy.modflow.ModflowZon,
            "mult": flopy.modflow.ModflowMlt,
            "pval": flopy.modflow.ModflowPval,
            "bas6": flopy.modflow.ModflowBas,
            "dis": flopy.modflow.ModflowDis,
            "lpf": flopy.modflow.ModflowLpf,
            "hfb6": flopy.modflow.ModflowHfb,
            "chd": flopy.modflow.ModflowChd,
            "wel": flopy.modflow.ModflowWel,
            "drn": flopy.modflow.ModflowDrn,
            "rch": flopy.modflow.ModflowRch,
            "evt": flopy.modflow.ModflowEvt,
            "ghb": flopy.modflow.ModflowGhb,
            "gmg": flopy.modflow.ModflowGmg,
            "riv": flopy.modflow.ModflowRiv,
            "swi2": flopy.modflow.ModflowSwi2,
            "pcg": flopy.modflow.ModflowPcg,
            "pcgn": flopy.modflow.ModflowPcgn,
            "nwt": flopy.modflow.ModflowNwt,
            "pks": flopy.modflow.ModflowPks,
            "sip": flopy.modflow.ModflowSip,
            "sor": flopy.modflow.ModflowSor,
            "oc": flopy.modflow.ModflowOc,
            "uzf": flopy.modflow.ModflowUzf1,
            "upw": flopy.modflow.ModflowUpw
            }
        return
예제 #14
0
파일: mf.py 프로젝트: arkottke/flopy
    def __init__(self, modelname='modflowtest', namefile_ext='nam',
                 version='mf2005', exe_name='mf2005.exe',
                 listunit=2, model_ws='.', external_path=None,
                 verbose=False, load=True, silent=0):
        BaseModel.__init__(self, modelname, namefile_ext, exe_name, model_ws)
        version_types = ('mf2k', 'mf2005', 'mfnwt', 'mfusg')
        self.heading = '# Name file for ' + version + ', generated by Flopy.'
        self.version = version.lower()
        if self.version == 'mf2k':
            self.glo = ModflowGlobal(self)
        self.lst = ModflowList(self, unitnumber=listunit)
        # external option stuff
        self.free_format = True
        self.external_fnames = []
        self.external_units = []
        self.external_binflag = []
        self.external = False
        self.load = load
        # the starting external data unit number
        self.__next_ext_unit = 1000
        if external_path is not None:
            assert model_ws == '.', "ERROR: external cannot be used " +\
                "with model_ws"

            #external_path = os.path.join(model_ws, external_path)
            if os.path.exists(external_path):
                print "Note: external_path " + str(external_path) +\
                    " already exists"
            #assert os.path.exists(external_path),'external_path does not exist'
            else:
                os.mkdir(external_path)
            self.external = True
        self.external_path = external_path
        self.verbose = verbose
        self.silent = silent
        self.mfpar = ModflowPar()

        # Create a dictionary to map package with package object.
        # This is used for loading models.
        self.mfnam_packages = {
            "zone": flopy.modflow.ModflowZon,
            "mult": flopy.modflow.ModflowMlt,
            "pval": flopy.modflow.ModflowPval,
            "bas6": flopy.modflow.ModflowBas,
            "dis": flopy.modflow.ModflowDis,
            "lpf": flopy.modflow.ModflowLpf,
            "hfb6": flopy.modflow.ModflowHfb,
            "chd": flopy.modflow.ModflowChd,
            "wel": flopy.modflow.ModflowWel,
            "drn": flopy.modflow.ModflowDrn,
            "rch": flopy.modflow.ModflowRch,
            "ghb": flopy.modflow.ModflowGhb,
            "gmg": flopy.modflow.ModflowGmg,
            "riv": flopy.modflow.ModflowRiv,
            "swi2": flopy.modflow.ModflowSwi2,
            "pcg": flopy.modflow.ModflowPcg,
            "pcgn": flopy.modflow.ModflowPcgn,
            "nwt": flopy.modflow.ModflowNwt,
            "pks": flopy.modflow.ModflowPks,
            "sip": flopy.modflow.ModflowSip,
            "sor": flopy.modflow.ModflowSor,
            "oc": flopy.modflow.ModflowOc,
            "uzf": flopy.modflow.ModflowUzf1,
            "upw": flopy.modflow.ModflowUpw
            }
        return