Hello.I am new to OpenFlow and would like to simulate an underwater oil spill. I know that I can use the Lagrangian module, I would like to know what modules I should use for the process.Thank you.
Hello Andrés,
To simulate an underwater oil spill you'll need first to setup your 3D hydrodynamic model of the region around the spill.
After that you can setup the Lagrangian module, defining an "origin" (i.e. a source or emission of particles representing the oil spill).
In addition to basic Lagrangian configuration (see default configuration file setup for common options and this article for basic instructions) you will need to setup:
Type of emission (continuous point emission):
EMISSION_SPATIAL : Point
EMISSION_TEMPORAL : Continuous
The flow in m3/s:
FLOW : 0.7
Activate the initial spread method:
ACCIDENT_METHOD : 1
Set the depth of the emission:
DEPTH_FROM_FREE_SURFACE : 154
Set the wind drag coefficient (once the oil reaches the surface, so it's transport accounts for wind)
WINDCOEF : 0.03
Then you will need to activate 3 properties (temperature, salinity and oil) inside the "origin" block as described below.
<<BeginProperty>>NAME : temperatureUNITS : ºCCONCENTRATION : 11EQUAL_TO_AMBIENT : 1<<EndProperty>>
<<BeginProperty>>NAME : salinityUNITS : psuCONCENTRATION : 36EQUAL_TO_AMBIENT : 1<<EndProperty>>
<<BeginProperty>>NAME : oilUNITS : m3CONCENTRATION : 1EQUAL_TO_AMBIENT : 0AMBIENT_CONC : 0<<EndProperty>>
And a block
<<BeginOil>>
[insert oil weathering compute options here (see this article for more details), e.g.:
OILTYPE : Crude
API : 21
POURPOINT : -30
MAXVWATERCONTENT : 70
But be sure to specify the ones below that control the droplet size (D50) and rise calculation method:
METHOD_FLOAT_VEL : 2
DROPLETS_D50 : 0.5E-03
METHOD_BW_DROPLETS_DIAMETER : 1
<<EndOil>>
Please let me know if you require any additional information.
Kind regards,Luis
Hi Luis.
Thank you for your answer, it is a great help for me.I am in the process of configuring my 3D hydrodynamic model, I want to work with real conditions, for this I download Temperature, sea level and speed components from HYCOM, I converted the file to HDF5 and I am delivering it to OpenFlow.The model recognizes the sea level that is in the HDF5 file, but it does not accept the speed U and V. This error appears "velocity U miss match between the HDF5 input file and model domain. "I think it is because the file is 10 levels deep.I would like to know if I need to activate an element or why this error.
I appreciate any suggestion.
Do you want to use HYCOM as initial and open boundary conditions to your 3D local model or do you want to run the Lagrangian model by directly reading the HYCOM currents (U,V), sea level anomaly, temperature and salinity (and don't compute with a local MOHID Water model)?
If it's the first, then you can interpolate HYCOM to your computational grid (see this article) and then set the initial and boundary conditions. You may find more information here.
If you want to read the HYCOM solution to use it as forcing for the Lagrangian model (not simulating directly the currents), you have to configure the Hydrodynamic to read it as shown below:
However with this method, you'll have to create a Grid Data file representing the bathymetry of HYCOM and a Geometry file consistent with the HYCOM vertical geometry. Ideally you should interpolate the HYCOM solution to a computational grid defined by you and then use the resulting (interpolated) file as forcing in the Hydrodynamic setup options.
hola luis.
This is Luis. I want to use the HYCOM solution as a force for the Lagrangian modulus, I think that would help me to reduce the computation time or am I wrong? I have loaded it like this..
When converting the HYCOM file to HDF5 I have this bathymetry, I don't know if it works for me.
The vertical geometry file is not clear to me. I could expand the answer a bit more.
So at present if it is possible to use 3D imposed solutions?
Thanks for everything Luis. I apologize if I am not clear in my questions. I am from Colombia and my English is regular
Hi Andrés,
Yes, if you read the HYCOM solution directly from the HDF5 file you don't have to calculate the currents, you simply read them. Your Hydrodynamic input data file setup for reading looks OK.
Regarding the bathymetry, yes, that is the output of the conversion tool. As you are reading the HYCOM solution from a HDF5 file the bathymetry and vertical geometry file need to be consistent. Thus in your model setup, in the domain properties you can set the path to this HDF5 file.
For the geometry (module responsible for computing the vertical coordinates/discretization - check details about it here) I am not sure what kind of vertical geometry HYCOM was setup with, so you'd have to adapt the Geometry file so that it matches the vertical geometry of HYCOM.
Alternatively, since you don't want to compute the hydrodynamics, you simply want to read the solution from the HDF5 file, you could use a different approach and configure the Lagrangian module to do it, instead of doing it from Hydrodynamic.
To do this you'll need to set this option in Hydrodynamic module:
EVOLUTION : No_hydrodynamic
And then add this block to your Lagrangian file, specifying the met-ocean conditions to be read. The model then will ignore all the Hydrodynamic, Geometry, etc.and will simply read everything directly from the HDF5 files. This setup assumes you have a HYCOM.hdf5 file, plus a Meteo.hdf5 (for meteorological conditions) and Waves.hdf5 for wave conditions (which you may or may not need depending on the model setup). I
<BeginMeteoOcean>
<<BeginProperty>>NAME : velocity UDESCRIPTION : velocity UUNITS : m/sMASK_DIM : -99
<<<BeginMeteoOceanFiles>>>..\General Data\Boundary Conditions\HYCOM.hdf5<<<EndMeteoOceanFiles>>><<EndProperty>>
<<BeginProperty>>NAME : velocity VDESCRIPTION : velocity VUNITS : m/sMASK_DIM : -99
<<BeginProperty>>NAME : velocity WDESCRIPTION : velocity WUNITS : m/sMASK_DIM : -99
<<BeginProperty>>NAME : wind velocity XDESCRIPTION : wind velocity XUNITS : m/sMASK_DIM : 2
<<<BeginMeteoOceanFiles>>>..\General Data\Boundary Conditions\Meteo.hdf5<<<EndMeteoOceanFiles>>><<EndProperty>>
<<BeginProperty>>NAME : wind velocity YDESCRIPTION : wind velocity YUNITS : m/sMASK_DIM : 2
<<BeginProperty>>NAME : air temperatureDESCRIPTION : air temperatureUNITS : ºCMASK_DIM : -99
<<BeginProperty>>NAME : atmospheric pressureFIELD_NAME : mean sea level pressureDESCRIPTION : atmospheric pressureUNITS : atmMASK_DIM : -99
<<BeginProperty>>NAME : wave amplitudeFIELD_NAME : significant wave heightDESCRIPTION : wave amplitudeUNITS : mMASK_DIM : 2
<<<BeginMeteoOceanFiles>>>..\General Data\Boundary Conditions\Waves.hdf5<<<EndMeteoOceanFiles>>><<EndProperty>>
<<BeginProperty>>NAME : wave periodFIELD_NAME : mean wave periodDESCRIPTION : wave periodUNITS : sMASK_DIM : 2
<<BeginProperty>>NAME : wave directionFIELD_NAME : mean wave directionDESCRIPTION : wave directionUNITS : ºMASK_DIM : 2
<<<BeginMeteoOceanFiles>>>..\General Data\Boundary Conditions\Waves.hdf5<<<EndMeteoOceanFiles>>><<EndProperty>><EndMeteoOcean>
This setup allows also to use multiple files at once (i.e. if you have one HYCOM per day of simulation), simply add to the list of files, and the model will read them in the defined order.
<<<BeginMeteoOceanFiles>>>..\General Data\Boundary Conditions\HYCOM_1.hdf5
..\General Data\Boundary Conditions\HYCOM_2.hdf5
..\General Data\Boundary Conditions\HYCOM_3.hdf5
<<<EndMeteoOceanFiles>>>