source: trunk/src/python_script/newvec_x.py @ 6

Last change on this file since 6 was 6, checked in by gaclod, 12 years ago

add GC python scripts

  • Property svn:executable set to *
File size: 1.0 KB
Line 
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3import numpy as np
4from numpy import *
5
6def newgrid(x, y, z, mask, orog, z0, z1, y11):
7
8
9    dx=0.1
10    dy=1       
11    dparx=0.05
12    dpary=0.5
13    n0=0
14#    y11= -50
15    x0, x1 = -180, 180
16    y0, y1 = -90, 90
17    dx=0.1
18    dy=1.0
19    n=size(x)   
20    xvec = arange(x0,x1,dx)
21    yvec = arange(y0,y11,dy)
22    nx = size(xvec)
23    ny = size(yvec)
24    ix = zeros(n, float)   
25    iy = zeros(n, float)   
26
27    for kk in range(0,n):
28        if x[kk] == -180:
29           ix[kk] = 3600
30        else:
31           ix[kk] = math.ceil((x[kk] - x0)/dx)-1
32
33    for kk in range(0,n):
34        if y[kk] == -90:
35           iy[kk] = 0
36        else:
37           iy[kk] = math.ceil((y[kk] - y0)/dy)-1
38
39    inx = (ix >= 0) & (ix < nx) 
40    iny = (iy >= 0) & (iy < ny)
41    inz = (z >= z0) & (z <= z1) 
42    inn = inx & iny & inz
43    iix = ix[inn]
44    iiy = iy[inn]
45    zz = z[inn]
46    mm = mask[inn]
47    alt = orog[inn]
48    lo = x[inn]
49    la = y[inn]
50
51    N = size(iix)# how many datapoints are left now?
52   
53    return zz, alt, mm, lo, la
Note: See TracBrowser for help on using the repository browser.