MIDOSS / MIDOSS-MOHID-config

**Archived** Collection of MOHID run data (.dat) files and run description YAML files for the various oil spill scenarios.
https://mohid-cmd.readthedocs.io/en/latest/run_description_file/index.html
2 stars 0 forks source link

monte carlo: get_spill_volume #16

Closed RachaelDMueller closed 4 years ago

RachaelDMueller commented 4 years ago

General Monte Carlo overview plan is here

Function: get_spill_volume

  1. OPTION 1: Input: oil carry capacity from “calc_oil_capacity”, spill type R5: Randomly choose spill volume based on % of fuel spilled or number of tanks breached. Assign:
    8 cargo tanks to ATBs and tug barges, 12 cargo tanks to Aframax 1 (or 2?) fuel tank(s) for all vessels Choose spill volume of 1, 2, or 4 (max) cargo tanks, with the volume of each cargo tank equal to “oil capacity”/number-of-tanks.

Note: Oil tankers are not always at capacity. According to the Earth Economic report, the average carrying capacity of oil tankers carrying crude oil or dilbit is 24 million gallons. TMX “worst case” scenario for dilbit transport is equivalent of 2 cargo holds of Aframax tanker, see page 11 of Earth Economics report. This report cites a DOE 2012 report that used spill volumes of 250,000 bbl (10.5 mil. gallons) crude, 65,000 bbl (2.7 mil. gallons) diesel and 25,000 bbl (~1 mil. gallons) heavy fuel oil. Spill volumes used in the Earth Economics report were 4 mil. gallons dilbit and 1 mil. gallon heavy fuel oil.According to the Earth Economics report, the fuel capacity of a large cargo vessel moving through Haro Strait is ~2 million gallons.

Output: spill volume (spill_volume)

  1. OPTION 2: Input: vessel type R5: If tanker, use Susan’s spill volume probability (based on Ryah’s report) to weight tanker spill volume Output: spill volume
RachaelDMueller commented 4 years ago

@rrondolo found this reference to help with the decision regarding spill type (fuel vs. cargo). The data shows that between 2005-2014, ~74 spills were tank spills and ~20 spills were bunkering spills. From this estimate, tank spills are 3.7 times more likely than bunkering spills for tankers.

RachaelDMueller commented 4 years ago

For tank barges (inc. ATBs), the Glosten Associates 2013 ERC report that @rrondolo found cites the following studies: Etkin 2001; Etkin 2002; Etkin 2003; Etkin and Neel 2001; Etkin and Michel 2003; Etkin et al. 2009 (See Appendix A, pg. 84). Table 15 shows Oil Outflow Probability for double hulled tank barges in impact accidents. Per ITOPF citation in previous comment, impact accidents (allusions and collisions) account for the majority of spills (or 44%) between 2005 - 2014.

We plan to use our own probability based on the data, but I think it would be good to compare ours with that presented in either (or both) Table 14 and Table 15 (page 85 of report or 24 of Appendix A). This study treats tankers as an integrated units and tank barges as disjointed units with separated cargo and fuel. ATBs are treated fast tankers in this study. For tankers, it is assumed that both cargo and fuel are spilled in an impact spill and that the quantity of both is a function of the percent fuel. We haven’t yet tested the capacity for spilling two types of fuel. We would need time to test this capacity if we were to follow this methodology.

Short of spilling two types of fuel, I propose that we keep with our current plan for: 1) Tankers

Decision: shall we incorporate the 98% capacity max for tank barges and 70% max bunkering capacity for fuel as used in the ERC report?

RachaelDMueller commented 4 years ago

I’ve updated the monte carlo notebook, utility functions file, make_master notebook and, most importantly, the get_oil_capacity script.

I think the structure is OK but I’m still ironing out bugs, mostly related to how I’m using (abusing?) the yaml file.

Issues:

RachaelDMueller commented 4 years ago

get_oil_capacity.py and make_master.ipynb updated to include traceable methodology for line fits. Need to test (and possibly debug) get_oil_capacity.py.

RachaelDMueller commented 4 years ago

We now have a monte_carlo setup to calculate fuel capacity. I’ve completed debugging of functional calls. Some fine-tuning is still needed on values in the master.yaml file, but these changes are not likely to affect the scripts. @douglatornell, I didn’t hear back from you about meeting this week to review code decisions so I went ahead and just coded things up my way. Please let me know if you see practices worth revising and learning from! (Granted, my style has changed from start to finish of this process, so I’m referring more to this most recent work).

NOTE: I did not add in the step to calculate spill volume from capacity, as you already have that code embedded in the framework. @SusanEAllen, I still see value in setting a min percent threshold for spill volumes (perhaps with a different value for tanker and cargo size classes then small vessels). Please let me know what you end up deciding and whether changes need to be made in the mater.yaml file.

I will be cleaning up make_master.ipynb and the master.yaml files and fine-tuning the values in these files.