Changeset 869 for codes/icosagcm/devel/Python/test/py
- Timestamp:
- 05/17/19 13:20:04 (5 years ago)
- Location:
- codes/icosagcm/devel/Python/test/py
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/devel/Python/test/py/dump_partition.py
r825 r869 107 107 def create_vars(self,f,dimname, info): 108 108 for vname, vtype, vdata in info: 109 vdata = np.asarray(vdata) 110 print('creating variable %s with shape %s.' %(vname, vdata.shape)) 109 111 var = f.createVariable(vname,vtype,dimname) 110 112 var[:] = vdata 111 113 112 114 def meshwrite(self,name): 115 mesh = self._mesh 113 116 """ Writing Mesh information to disk for Fortran segment""" 114 117 … … 124 127 125 128 #----------------DEFINING DIMENSIONS-------------------- 129 max_primal_deg = mesh.primal_deg.max() 130 max_dual_deg = mesh.dual_deg.max() 131 max_trisk_deg = mesh.trisk_deg.max() 132 def crop(dim, *data) : return [ x[:,0:dim] for x in data ] 133 mesh.primal_edge, mesh.primal_ne, mesh.primal_vertex = crop(max_primal_deg, mesh.primal_edge, mesh.primal_ne, mesh.primal_vertex) 134 mesh.dual_edge, mesh.dual_ne = crop(max_dual_deg, mesh.dual_edge, mesh.dual_ne) 135 mesh.trisk, mesh.wee = crop(max_trisk_deg, mesh.trisk, mesh.wee) 136 126 137 for dimname, dimsize in [("primal_cell", self._mesh.primal_deg.size), 127 138 ("dual_cell", self._mesh.dual_deg.size), … … 144 155 145 156 self.create_vars(f,("primal_cell","primal_edge_or_vertex"), 146 [("primal_vertex","i4",self._mesh.primal_vertex), 147 ("primal_edge","i4",self._mesh.primal_edge), 148 ("primal_ne","i4",self._mesh.primal_ne) ]) 149 157 [("primal_vertex","i4",self._mesh.primal_vertex), 158 ("primal_bounds_lon","f8",self._mesh.primal_bounds_lon), 159 ("primal_bounds_lat","f8",self._mesh.primal_bounds_lat), 160 ("primal_edge","i4",self._mesh.primal_edge), 161 ("primal_ne","i4",self._mesh.primal_ne) ]) 162 150 163 self.create_vars(f,"dual_cell", 151 164 [("dual_deg","i4",self._mesh.dual_deg), … … 161 174 self.create_vars(f,("dual_cell","dual_edge_or_vertex"), 162 175 [("dual_edge","i4",self._mesh.dual_edge), 163 ("dual_vertex","i4",self._mesh.dual_vertex), 164 ("dual_ne","i4",self._mesh.dual_ne), 165 ("Riv2","f8",self._mesh.Riv2)]) 176 ("dual_vertex","i4",self._mesh.dual_vertex), 177 ("dual_bounds_lon","f8",self._mesh.dual_bounds_lon), 178 ("dual_bounds_lat","f8",self._mesh.dual_bounds_lat), 179 ("dual_ne","i4",self._mesh.dual_ne), 180 ("Riv2","f8",self._mesh.Riv2)]) 166 181 167 182 self.create_vars(f,"edge", -
codes/icosagcm/devel/Python/test/py/write_Cartesian_mesh.py
r825 r869 1 1 from dynamico import getargs 2 getargs.add("--nx", type=int, 3 default=64, choices=None, 4 help="number of x points") 5 getargs.add("--ny", type=int, 6 default=64, choices=None, 7 help="number of y points") 8 getargs.add("--Lx", type=float, 9 default=8., choices=None, 10 help="Lx") 11 getargs.add("--Ly", type=float, 12 default=8., choices=None, 13 help="Ly") 2 getargs.add("--nx", type=int, default=64, 3 help="number of points along the x axis") 4 getargs.add("--ny", type=int, default=0, 5 help="number of points along the y axis, defaults to nx") 6 getargs.add("--Lx", type=float, default=0., 7 help="domain size along x, defaults to nx") 8 getargs.add("--Ly", type=float, default=0., 9 help="domain size along y, defaults to ny") 14 10 15 11 args = getargs.parse() … … 22 18 23 19 nx, ny, Lx, Ly, llm, nqdyn = args.nx, args.ny,args.Lx, args.Ly, 1, 1 20 if ny==0 : ny=nx 21 if Lx==0. : Lx=nx 22 if Ly==0. : Ly=ny 24 23 25 24 dx,dy=Lx/nx,Ly/ny
Note: See TracChangeset
for help on using the changeset viewer.