:py:mod:`gnome.tamoc.tamoc_spill` ================================= .. py:module:: gnome.tamoc.tamoc_spill .. autoapi-nested-parse:: tamoc_spill.py This file contains the definitions to create a TAMOC simulation in GNOME and run the simulation in a seemless integration with GNOME. Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: gnome.tamoc.tamoc_spill.TamocSpill .. py:class:: TamocSpill(num_elements=1000, num_per_timestep=None, start_position=(0.0, 0.0, 1000.0), release_time=datetime.now(), release_rate=0.0, release_duration=timedelta(hours=1), units='bbl/day', substance=None, release=None, water=None, gor=None, d0=0.0, phi_0=-np.pi / 2.0, theta_0=0.0, windage_range=(0.01, 0.04), windage_persist=900, on=True, name=None, **kwargs) Bases: :py:obj:`gnome.spills.spill.Spill` Models a TAMOC spill by combining the near-field model with Release and Substance objects # This really should be based in a BaseSpill Class! Spills used by the gnome model. It contains a release object, which releases elements. It also contains a Substance which contains the type of substance spilled and it initializes data arrays to non-default values (non-zero). :param release: an object defining how elements are to be released :type release: derived from :class:`~gnome.spills.release.Release` :param substance: an object defining the substance of this spill. Defaults to :class:`~gnome.spills.substance.NonWeatheringSubstance` :type substance: derived from :class:`~gnome.spills.substance.Substance` **Optional parameters (kwargs):** :param name: Human-usable Name of this spill :type name: str :param on=True: Toggles the spill on/off. :type on: bool :param amount=None: mass or volume of oil spilled. :type amount: double (volume or mass) :param units=None: must provide units for amount spilled. :type units: str :param amount_uncertainty_scale=0.0: scale value in range 0-1 that adds uncertainty to the spill amount. Maximum uncertainty scale is (2/3) * spill_amount. :type amount_uncertainty_scale: float .. note:: Define either volume or mass in 'amount' attribute and provide appropriate 'units'. .. py:property:: substance first try to use get_oil_props using 'val'. If this fails, then assume user has provided a valid OilProps object and use it as is .. py:attribute:: release_time .. py:attribute:: end_release_time .. py:attribute:: start_position .. py:attribute:: num_elements .. py:method:: rewind() rewinds the release to original status (before anything has been released).