Open athelaf opened 2 years ago
See issue5_oasis-compat for work in progress.
I recently refactored (#59) and modified the internal ordering (#58) so that we could be compatible both with the nextsimDG and OASIS coupler. One thing I am not sure of, in the above diagram (and those in the OASIS docs), where is the coordinate system origin i.e., x=0, y=0. My current understanding is that (0,0) is the top-left corner. If that is the case, then I believe the new implementation ( as written in PR #58) will give the correct compatibility.
If (0,0) is not the top left corner (in the diagram) then we potentially have a problem.
I recently refactored (#59) and modified the internal ordering (#58) so that we could be compatible both with the nextsimDG and OASIS coupler. One thing I am not sure of, in the above diagram (and those in the OASIS docs), where is the coordinate system origin i.e., x=0, y=0. My current understanding is that (0,0) is the top-left corner. If that is the case, then I believe the new implementation ( as written in PR #58) will give the correct compatibility.
If (0,0) is not the top left corner (in the diagram) then we potentially have a problem.
The fact that proc 1 in the diagram is positioned in the top left is encouraging.
The OASIS coupler (see documentation, Section 2.2.3) supports 5 types of grid partitioning, including the Box partition approach we use in our domain decomposition. The definition of the boxes is similar, i.e., each partition is described by its upper left corner and its local extents in the X and Y dimensions, where X is the first dimension and Y is the second. However, in our tool the upper left corner is described by coordinates, assuming Y is the fastest increasing dimension (our tool uses C-compatible ordering internally), while in OASIS it is described by a single global offset, assuming X is the fastest increasing dimension (OASIS uses Fortran-compatible ordering internally). An example of a box partition over 3 processes for OASIS is shown below: