Steps for inline interpolation from homme to a lat-lon grid:

  1. Add a list of points to be interpolated in element_t - this would be an allocatable array of type cartesian2d_t
  2. During initialization determine what lat,lon points to interpolate to fall into each element and fill in the cartesian2d_t array with their cartesian equivalents.
  3. Rework gen_grid_assemble to work on an element basis
  4. Write an analog of the netcdf_io_mod that works on a lat/lon grid. This module is currently a mess so I think that I would prefer that it be rewritten rather than amend it. The new module would only support PIO. I suppose that we should go ahead and write this into the model, instead of as a standalone postprocessor.
  5. a vector interpolation routine also. It would convert the vector to contra-variant coordiantes, interpolate the contra-varient coordinates via gen_grid_assemble() and then map back to lat-lon. So it will have to compute the elem(ie)%D(:,:,:,(smile) matrix at the lat-lon points. Since that is an analytic formula, probably it should just be computed on the fly?
  • No labels