[MITgcm-support] Barotropic ocean gyre tutorial

Jan Klaus Rieck jan.rieck at mail.mcgill.ca
Thu Apr 1 09:47:01 EDT 2021


Hello Jeremy Miller,

I also use python to to generate input data for the MITgcm. I found that, to generate files that can be read by the MITgcm consistently, I needed to specify the type explicitly.
My way of saving the files would look like this in your case:

if sys.byteorder == 'little': tau_2.byteswap(True)
fid = open(''windx_siny.bin', 'wb')
tau_2.astype('float32').tofile(fid)

Of course, 'float32' could be replaced by 'float64' if you require double precision.

I hope this helps,
Jan Rieck

On Thu, 2021-04-01 at 10:22 +0300, Jeremy Miller wrote:
Dear MITGCM forum,

I am Jeremy Miller, I am new to MITgcm and I've been going through the tutorials. I have a question about the "Barotropic Ocean Gyre" tutorial (section 4.1).

I managed to compile and run the code, and re-produce the first two plots shown in section 4.1.5 for  wind stress of τ = τ0 cos( πy/Ly), for both the advection and non-advection cases (with the provided input binary files).
I ran into problems when trying to produce the third plot, for the case where τ = τ0 sin( πy/Ly). I am a python user, so I translated gendata.m into python to write the input binary files 'windx_cosy.bin' 'windx_siny.bin' (see the file gendata_tut4.1py attached).  As explained in section 3.9 I've included the snippet

if sys.byteorder == 'little': tau_2.byteswap(True)

where "tau2" is the array to be output. There was no issue in the cosine wind stress, and I managed to reproduce the results that I got with the original 'windx_cosy.bin' provided in the tutorial. However, with the sine wind stress case, the output in 'Eta.0000077760.001.001' is all zeros.

When I attempt to read  'windx_siny.bin' with python into a new array called tau2_1. I get absurdly big numbers back, which do not match the original array tau2 that I created. If I Remove the snippet " if sys.byteorder == 'little': tau_2.byteswap(True) ", in the python gendata code, tau2_1 and tau2 match. But, then when I run the code again, the file output.txt contains a long list of NaNs.

I have also included the python code used to generate the plots in the file tut_4.1_plots.py<http://tut_4.1_plots.py/>

Look forward to hearing from you.
Yours sincerely
Jeremy Miller

_______________________________________________

MITgcm-support mailing list

<mailto:MITgcm-support at mitgcm.org>

MITgcm-support at mitgcm.org


<http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support>

http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.mitgcm.org/pipermail/mitgcm-support/attachments/20210401/59f21c3d/attachment-0001.html>


More information about the MITgcm-support mailing list