def change_model_ws(self, new_pth=None, reset_external=False):
    '\n        Change the model work space.\n\n        Parameters\n        ----------\n        new_pth : str\n            Location of new model workspace.  If this path does not exist,\n            it will be created. (default is None, which will be assigned to\n            the present working directory).\n\n        Returns\n        -------\n        val : list of strings\n            Can be used to see what packages are in the model, and can then\n            be used with get_package to pull out individual packages.\n\n        '
    if (new_pth is None):
        new_pth = os.getcwd()
    if (not os.path.exists(new_pth)):
        try:
            print(f'''
creating model workspace...
   {new_pth}''')
            os.makedirs(new_pth)
        except:
            raise OSError(f'{new_pth} not valid, workspace-folder')
    old_pth = self._model_ws
    self._model_ws = new_pth
    if self.verbose:
        print(f'''
changing model workspace...
   {new_pth}''')
    for pp in self.packagelist:
        pp.fn_path = os.path.join(self.model_ws, pp.file_name[0])
    if (hasattr(self, 'external_path') and (self.external_path is not None) and (not os.path.exists(os.path.join(self._model_ws, self.external_path)))):
        pth = os.path.join(self._model_ws, self.external_path)
        os.makedirs(pth)
        if reset_external:
            self._reset_external(pth, old_pth)
    elif reset_external:
        self._reset_external(self._model_ws, old_pth)
    return None
Change the model work space.

Parameters
----------
new_pth : str
    Location of new model workspace.  If this path does not exist,
    it will be created. (default is None, which will be assigned to
    the present working directory).

Returns
-------
val : list of strings
    Can be used to see what packages are in the model, and can then
    be used with get_package to pull out individual packages.
def change_model_ws(self, new_pth=None, reset_external=False):
    '\n        Change the model work space.\n\n        Parameters\n        ----------\n        new_pth : str\n            Location of new model workspace.  If this path does not exist,\n            it will be created. (default is None, which will be assigned to\n            the present working directory).\n\n        Returns\n        -------\n        val : list of strings\n            Can be used to see what packages are in the model, and can then\n            be used with get_package to pull out individual packages.\n\n        '
    if (new_pth is None):
        new_pth = os.getcwd()
    if (not os.path.exists(new_pth)):
        try:
            print(f'
creating model workspace...
   {new_pth}')
            os.makedirs(new_pth)
        except:
            raise OSError(f'{new_pth} not valid, workspace-folder')
    old_pth = self._model_ws
    self._model_ws = new_pth
    if self.verbose:
        print(f'
changing model workspace...
   {new_pth}')
    for pp in self.packagelist:
        pp.fn_path = os.path.join(self.model_ws, pp.file_name[0])
    if (hasattr(self, 'external_path') and (self.external_path is not None) and (not os.path.exists(os.path.join(self._model_ws, self.external_path)))):
        pth = os.path.join(self._model_ws, self.external_path)
        os.makedirs(pth)
        if reset_external:
            self._reset_external(pth, old_pth)
    elif reset_external:
        self._reset_external(self._model_ws, old_pth)
    return None