Source code for pycif.plugins.domains.dummy.create_domain

import numpy as np
from ....utils.path import init_dir


[docs] def create_domain(domain, **kwargs): """Creates a grid if needed Args: domain (dictionary): dictionary defining the domain. Returns: initialized domain """ nlon = domain.nlon nlat = domain.nlat lonc = np.linspace(domain.xmin, domain.xmax, nlon + 1) latc = np.linspace(domain.ymin, domain.ymax, nlat + 1) lon = 0.5 * (lonc[1:] + lonc[:-1]) lat = 0.5 * (latc[1:] + latc[:-1]) # Meshgrids zlon, zlat = np.meshgrid(lon, lat) zlonc, zlatc = np.meshgrid(lonc, latc) domain.zlon = zlon domain.zlat = zlat domain.zlonc = zlonc domain.zlatc = zlatc # Dump coordinates for later use init_dir("{}/domain".format(domain.workdir)) np.savetxt("{}/domain/lonc.txt".format(domain.workdir), lonc) np.savetxt("{}/domain/latc.txt".format(domain.workdir), latc) np.savetxt("{}/domain/lon.txt".format(domain.workdir), lon) np.savetxt("{}/domain/lat.txt".format(domain.workdir), lat)