def dy_approx(self): dy = self.llat * np.nan for j in xrange(self.imt): dy[1:-1,j] = lldist.ll2dist2vec(self.llon[:-2,j], self.llat[:-2,j], self.llon[2:, j], self.llat[2:, j]) dy[ 0,:] = 2 * dy[ 1,:] - dy[ 2,:] dy[-1,:] = 2 * dy[-2,:] - dy[-3,:] return dy
def dx_approx(self): dx = self.llon * np.nan for i in xrange(self.jmt): dx[i,1:-1] = lldist.ll2dist2vec(self.llon[i,:-2], self.llat[i,:-2], self.llon[i, 2:], self.llat[i, 2:]) dx[:, 0] = 2 * dx[:,1] - dx[:,2] dx[:,-1] = 2 * dx[:,-2] - dx[:,-3] return dx
def dy_approx(self): """Caclulate dy from llon and llat""" if not hasattr(self, "_dy_approx"): dy = self.llat * np.nan for j in xrange(self.imt): latvec1 = (self.llat[0:-2,j] + self.llat[1:-1,j]) / 2 latvec2 = (self.llat[2:,j] + self.llat[1:-1,j]) / 2 lonvec1 = (self.llon[0:-2,j] + self.llon[1:-1,j]) / 2 lonvec2 = (self.llon[2:,j] + self.llon[1:-1,j]) / 2 dy[1:-1,j] = lldist.ll2dist2vec(lonvec1, latvec1, lonvec2, latvec2) dy[ 0,:] = 2 * dy[ 1,:] - dy[ 2,:] dy[-1,:] = 2 * dy[-2,:] - dy[-3,:] self._dy_approx = dy return self._dy_approx
def dx_approx(self): """Caclulate dx from llon and llat""" if not hasattr(self, "_dx_approx"): dx = self.llon * np.nan for i in xrange(self.jmt): latvec1 = (self.llat[i,0:-2] + self.llat[i,1:-1]) / 2 latvec2 = (self.llat[i,2:] + self.llat[i,1:-1]) / 2 lonvec1 = (self.llon[i,0:-2] + self.llon[i,1:-1]) / 2 lonvec2 = (self.llon[i,2:] + self.llon[i,1:-1]) / 2 dx[i,1:-1] = lldist.ll2dist2vec(lonvec1, latvec1, lonvec2, latvec2) dx[:, 0] = 2 * dx[:,1] - dx[:,2] dx[:,-1] = 2 * dx[:,-2] - dx[:,-3] self._dx_approx = dx return self._dx_approx
def dy_approx(self): """Caclulate dy from llon and llat""" if not hasattr(self, "_dy_approx"): dy = self.llat * np.nan for j in xrange(self.imt): latvec1 = (self.llat[0:-2, j] + self.llat[1:-1, j]) / 2 latvec2 = (self.llat[2:, j] + self.llat[1:-1, j]) / 2 lonvec1 = (self.llon[0:-2, j] + self.llon[1:-1, j]) / 2 lonvec2 = (self.llon[2:, j] + self.llon[1:-1, j]) / 2 dy[1:-1, j] = lldist.ll2dist2vec(lonvec1, latvec1, lonvec2, latvec2) dy[0, :] = 2 * dy[1, :] - dy[2, :] dy[-1, :] = 2 * dy[-2, :] - dy[-3, :] self._dy_approx = dy return self._dy_approx
def dx_approx(self): """Caclulate dx from llon and llat""" if not hasattr(self, "_dx_approx"): dx = self.llon * np.nan for i in xrange(self.jmt): latvec1 = (self.llat[i, 0:-2] + self.llat[i, 1:-1]) / 2 latvec2 = (self.llat[i, 2:] + self.llat[i, 1:-1]) / 2 lonvec1 = (self.llon[i, 0:-2] + self.llon[i, 1:-1]) / 2 lonvec2 = (self.llon[i, 2:] + self.llon[i, 1:-1]) / 2 dx[i, 1:-1] = lldist.ll2dist2vec(lonvec1, latvec1, lonvec2, latvec2) dx[:, 0] = 2 * dx[:, 1] - dx[:, 2] dx[:, -1] = 2 * dx[:, -2] - dx[:, -3] self._dx_approx = dx return self._dx_approx