Up to Transformations and interpolations
Hello, I am using a 'bi-linear' option in OASIS3-MCT. It takes so long for OASIS3-MCT to create remapping files at the very beginning. I think it is caused by this task is not parallelized in OASIS3-MCT. Does anyone have any other tool (like a matlab code) that does this job outside OASIS3-MCT? Best, Chan
Hi Chan, We are working on ESMF and also on using OpenMP in the SCRIP to bypass this problem. What are the characteristics of the grids you are using ? By the way with OASIS3-MCT, you just have to create the remapping files once, during your first run, and then copy them in your data directory to reuse them during the other simulations. Once the remapping files are created they are read by OASIS3-MCT. Let me know if this helps. Best regards, Laure
Hi Laure, I am coupling global (parent) and regional (child) domains. In my case, the child grid has much smaller number of cells, and it is a part of the parent grid. So, I think that if it is possible to set limits of remapping only inside the child domain, the computational cost will be reduced significantly. I'm looking into the OASIS3-MCT source code but I've not found the way yet. If you've experienced this kind of case, please let me know. Thanks, Chan
Laure: Have you parellelized the 'bi-linear' remapping part with OpenMP, too? If so, could you share the file? Thanks, Chan
Hi Chan, We only have a DISTWEIGHT remapping written in OpenMP. We think that you could use it with 4 neighbours to do your remapping instead of a bi-linear remapping (see the User Guide https://oasis.cerfacs.fr/wp-content/uploads/sites/114/2021/02/GLOBC-TR-oasis3mct_UserGuide3.0_052015.pdf, section 4.3). Could you send to me an email (coquart at cerfacs.fr) today or tomorrow so I can send back to you the SCRIP corresponding routine (because after I will be on holidays for 2 weeks). Best regards, Laure
Hi Chan, Another way to reduce time remapping is indeed to limit the remapping inside the child domain not modifying the source code just modifying the mask. To do the bilinear remapping from child to parent, you should change the mask of the parent grid, unsmaking only the child grid zone, as the weights are not calculated for the masked points.
Hello Laure, I have another issue with OASIS3-MCT. The previous issue had been clearly resolved by following the above suggestion. I'd modified the mask file and it reduced the computational cost significantly. My new issue may be associated with NetCDF. Now I am trying to couple a global domain (9000X7000) and a regional domain (2000x3000). When I ran this case, it was terminated at the very beginning with errors as below: "(oasis_io_write_2dgridfld_fromroot) model : 2 proc : 0 : NetCDF: One or more variable sizes violate format constraints" "(oasis_io_write_2dgridfld_fromroot) model : 2 proc : 0 : NetCDF: Operation not allowed in define mode " The size of the generated 'grids.nc' was about 2.5 GB. Have you ever experienced this kind of error? If so, please let me know how to resolve this issue. Best, Chan
Hello, I found out this error was caused by the size of 'grids.nc'. In OASIS3-MCT, this file is designed to be written in the classic format. But the maximum size of the classic format is about 2.0 GiB. I've modified the source code '~/oasis3-mct/lib/psmile/src/mod_oasis_io.F90' as below: ! status = nf90_create(filename,NF90_CLOBBER,ncid) status = nf90_create(filename,or(nf90_clobber,nf90_64bit_offset),ncid) The new 64-bit offset format can be now considered in my OASIS3-MCT. A 'grids.nc' (about 3.4 GB) has been created without any issues. Thanks, Chan