rms.import_localmodule ====================== Inside the RMS project it can be beneficial to have a module that serves as a library, not only a front end script. Several problems exist in current RMS * RMS has no awareness of this 'PYTHONPATH', i.e. /pythoncomp * RMS will, once loaded, not refresh any changes made in the module * Python requires extension .py, but RMS often adds .py_1 for technical reasons, which makes it impossible for the end-user to understand why it will not work, as the 'instance-name' (script name inside RMS) and the actual file name will differ. This function solves all these issues, and makes it possible to import a RMS project library in a much easier way. The library is inside rms ------------------------- Given that the library module is made inside the RMS GUI, here is an example:: import fmu.tools as tools # mylib.py is inside the RMS project plib = tools.rms.import_localmodule(project, "mylib") plib.somefunction(some_arg) The library is outside RMS -------------------------- Sometimes it is convenient that the library is made outside RMS, and the same function can then be applied with a `path` keyword:: import fmu.tools as tools # extlib.py is outside the RMS project, relative path ../lib/extlib.py plib = tools.rms.import_localmodule(project, "extlib", path="../lib") plib.somefunction(some_arg) # or as a package: # extlib is here a folder (package) is outside the RMS project, relative path ../lib/extlib # extlib/ # __init__.py # calc.py plib = tools.rms.import_localmodule(project, "extlib", path="../lib") plib.calc.somefunction(some_arg)