[MITgcm-support] variables (.)_F1 in obcs_calc.F
Jody Klymak
jklymak at uvic.ca
Thu Feb 25 14:57:20 EST 2016
> On 25 Feb 2016, at 11:44 AM, Duran Camejo, Mario FORNATL, SP <mduranca at nps.edu> wrote:
>
> Hi Jody,
>
> thanks for your comments and advice! I'm trying to simulate the internal wakes produced by a watercraft that is accelerating through
> the fluid but I would also like to know how the velocity pattern changes at the surface. I was considering to vary the flow velocity every
> time step and so I would need to change the zonal velocity boundary conditions every time step too. Can I do that using a sponge at the
> boundaries?
Yes;
Something like the below in data and data.obcs allows you to set the BCs on your boundary, where the files are nz*nx*nt where nt is the number of time steps (externForcingCycle/externForcingPeriod).
Note that the entries are assumed to be at externForcingPeriod/2, 3externForcingPeriod/2, 5externForcingPeriod/2, etc, and that the forcing is linearly interpolated between entries. i.e. the forcing at t=0 is the average of the first entry in your forcing file and the last. This caused me vast confusion when trying to spin something up from rest. But its this way because climatologists have monthly-averaged or yearly averaged fields for which the average is centered on the middle of the period.
Cheers, Jody
# Time stepping parameters
&PARM03
#### Other parameters
periodicExternalForcing=.TRUE.,
externForcingPeriod=1860.,
externForcingCycle=44640.,
/
# Open-boundaries
&OBCS_PARM01
OB_Jnorth=360*-1,
OB_Jsouth=360*1,
OB_Ieast=608*-1,
OB_Iwest=608*1,
useOBCSPrescribe=.TRUE.,
OBWuFile = 'Wu.obcs',
OBWvFile = 'Wv.obcs',
OBWtFile = 'Wt.obcs',
#
OBEuFile = 'Eu.obcs',
OBEvFile = 'Ev.obcs',
OBEtFile = 'Et.obcs',
#
OBNuFile = 'Nu.obcs',
OBNvFile = 'Nv.obcs',
OBNtFile = 'Nt.obcs',
#
OBSuFile = 'Su.obcs',
OBSvFile = 'Sv.obcs',
OBStFile = 'St.obcs',
#
useOBCSsponge=.TRUE.,
/
# Orlanski parameters
&OBCS_PARM02
CMAX=0.45,
/
# Sponge layer parameters
&OBCS_PARM03
Urelaxobcsinner=15000.,
Urelaxobcsbound=3000.,
Vrelaxobcsinner=15000.0,
Vrelaxobcsbound=3000.0,
spongeThickness=15,
/
> My grid dimensions increase exponentially to the boundaries in order to have a finer mesh around the watercraft, that is in the inner part
> of the box but asymmetrically located to make bigger the wake region behind it.
>
> Cheers,
> Mario
>
>
> -----Original Message-----
> From: Jody Klymak [mailto:jklymak at uvic.ca]
> Sent: Thursday, February 25, 2016 9:27 AM
> To: mitgcm-support at mitgcm.org
> Subject: Re: [MITgcm-support] variables (.)_F1 in obcs_calc.F
>
>
> Hi Mario,
>
> So you basically just want a channel flow, which is something I and others do all the time for “wake” experiments from underwater bathymetry.
>
> For that case, on both boundaries I would use a sponge that relaxes the model velocities slowly to the desired velocity. Orlanski is fine in 2-d with the lowest mode, but will not really do a good job on lateral variations, whereas a relatively careful sponge will do very well at the expense of some grid cells. I also try to make the sponge far away from the active region by slowly telescoping the grid away from the obstacle. This means the sponge can be many wavelengths from the obstacle. You just have to be sure that your telescoping doesn’t cause spurious reflections, so the change in each dx needs to be gradual (I think 1% or so is fine for my applications).
>
> I’m not clear however if you are trying to simulate the surface wake. I’m not at all certain how well the MITgcm does at non-linear surface waves, nor how you can damp them away. I think sea surface height is usually inferred, so its a bit of a nuisance to apply a sponge to. Maybe someone on here can pipe up on the GCMs ability to resolve surface waves, but its not something a lot of large-scale ocean modellers usually do.
>
> Hope that helps.
>
> Cheers, Jody
>
>
>
>> On 25 Feb 2016, at 9:13 AM, Duran Camejo, Mario FORNATL, SP <mduranca at nps.edu> wrote:
>>
>> Hello Martin,
>>
>> I hadn't got an answer yet, thank you very much for replying!
>>
>> I will try to explain my question a little better. I'm using MITgcm
>> although, as you say, it is not meant to simulated watercrafts moving
>> in the ocean, because I'm interested in the evolution of the wakes
>> (after a watercraft) and for that I think MITgcm is an extraordinary
>> tool. The way to simulate a watercraft accelerating through a fixed
>> box in the ocean is by "injecting momentum" to the fluid inside the
>> box, namely, setting some additional velocity in a small parcel of the fluid every time step and updating the boundary conditions for the zonal velocity in the west every time step too (watercraft is moving east to west which is equivalent to assume that the fluid is moving west to east and the watercraft is at rest), whereas keeping Orlanski open boundary conditions in the east to allow the free development of the wakes. Maybe it wouldn't be necessary to go through the F1 variables for updating the BC in the west because the time-evolving BC there might be straightforwardly calculated in obcs_calc.F. Any suggestion will be greatly appreciated!
>>
>> Anyway I will take a look to “verification/exp4”.
>>
>> Best regards,
>> Mario
>>
>>
>> -----Original Message-----
>> From: Martin Losch [mailto:Martin.Losch at awi.de]
>> Sent: Thursday, February 25, 2016 6:51 AM
>> To: MITgcm Support
>> Subject: Re: [MITgcm-support] variables (.)_F1 in obcs_calc.F
>>
>> Mario,
>>
>> did you get an answer? I am afraid that your question is not clear.
>> - the MITgcm is not meant to simulated watercrafts moving in the
>> ocean, you could probably used some of the technology and introduce
>> fixed geometry representing a watercraft, but I am sure that there is
>> better software for that
>> - the *_F1 variables are passed to the model via MPI from a parent model into which the current model is nested. This is a feature that is not used very often and I don’t know how well this is maintained. For a more typical application of the obcs-packace see “verification/exp4”
>>
>> Martin
>>
>>> On 17 Feb 2016, at 23:57, Duran Camejo, Mario FORNATL, SP <mduranca at nps.edu> wrote:
>>>
>>> Dear MITgcm users,
>>>
>>> I'm doing some simulations of watercrafts moving in the ocean. For
>>> that, I'm trying to produce time- dependent boundary conditions
>>> through the code obcs_calc.F and I would like to know where the variables (.)_F1 are being calculated.
>>>
>>> I will greatly appreciate any help!!!
>>>
>>> Mario
>>>
>>> _______________________________________________
>>> MITgcm-support mailing list
>>> MITgcm-support at mitgcm.org
>>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>>
>>
>> _______________________________________________
>> MITgcm-support mailing list
>> MITgcm-support at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>> _______________________________________________
>> MITgcm-support mailing list
>> MITgcm-support at mitgcm.org
>> http://mitgcm.org/mailman/listinfo/mitgcm-support
>
> --
> Jody Klymak
> http://web.uvic.ca/~jklymak/
>
>
>
>
>
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
--
Jody Klymak
http://web.uvic.ca/~jklymak/
More information about the MITgcm-support
mailing list