|
YAC 3.12.0
Yet Another Coupler
|
Functions | |
| lonlat2xyz (lon, lat) | |
| xyz2lonlat (x, y, z) | |
| rotmat (theta, plane_dims, d=2) | |
| msg (m) | |
| data (lon, lat) | |
Variables | |
| yac = YAC() | |
| str | my_comp_name = "PISM" |
| comp = yac.def_comp(my_comp_name) | |
| size = comp.comp_comm.size | |
| rank = comp.comp_comm.rank | |
| fac = int(np.sqrt(size)) | |
| list | dim2d = [100, 50] |
| list | size2d = [fac, size//fac] |
| list | rank2d = [rank % fac, rank//fac] |
| list | chunk2d = [math.ceil(dim2d[0]/size2d[0]), math.ceil(dim2d[1]/size2d[1])] |
| list | slice2d |
| x = np.linspace(-.5, .5, dim2d[0]) | |
| y = np.linspace(-.5, .5, dim2d[1]) | |
| vx | |
| vy | |
| r = rotmat(-.45*np.pi, [0, 2], 3)@rotmat(0.1*np.pi, [0, 1], 3) | |
| v_xyz = np.stack(lonlat2xyz(vx, vy), axis=-1) | |
| float | c_xyz = 0.25*(v_xyz[:-1, :-1, :]+v_xyz[1:, :-1, :]+v_xyz[:-1, 1:, :]+v_xyz[1:, 1:, :]) |
| cx | |
| cy | |
| grid = Curve2dGrid(f"{my_comp_name}_grid", vx, vy) | |
| corner_idx = np.arange(math.prod(dim2d)).reshape(dim2d)[slice2d[0], slice2d[1]] | |
| cell_idx | |
| points_cell = grid.def_points(Location.CELL, cx, cy) | |
| points_vertex = grid.def_points(Location.CORNER, vx, vy) | |
| list | interpolations |
| dict | field |
| data_vertex = data(vx, vy) | |
| data_cell = data(cx, cy) | |
| dict | data = field[f"{interp[0]}_{comp_name}_field_out"].get() |
| toy_multi_curve2d.data | ( | lon, | |
| lat ) |
Definition at line 108 of file toy_multi_curve2d.py.
| toy_multi_curve2d.lonlat2xyz | ( | lon, | |
| lat ) |
Definition at line 14 of file toy_multi_curve2d.py.
| toy_multi_curve2d.msg | ( | m | ) |
Definition at line 43 of file toy_multi_curve2d.py.
| toy_multi_curve2d.rotmat | ( | theta, | |
| plane_dims, | |||
| d = 2 ) |
Definition at line 26 of file toy_multi_curve2d.py.
| toy_multi_curve2d.xyz2lonlat | ( | x, | |
| y, | |||
| z ) |
Definition at line 20 of file toy_multi_curve2d.py.
| float toy_multi_curve2d.c_xyz = 0.25*(v_xyz[:-1, :-1, :]+v_xyz[1:, :-1, :]+v_xyz[:-1, 1:, :]+v_xyz[1:, 1:, :]) |
Definition at line 70 of file toy_multi_curve2d.py.
| toy_multi_curve2d.cell_idx |
Definition at line 79 of file toy_multi_curve2d.py.
Definition at line 57 of file toy_multi_curve2d.py.
| toy_multi_curve2d.comp = yac.def_comp(my_comp_name) |
Definition at line 37 of file toy_multi_curve2d.py.
Definition at line 76 of file toy_multi_curve2d.py.
| toy_multi_curve2d.cx |
Definition at line 72 of file toy_multi_curve2d.py.
| toy_multi_curve2d.cy |
Definition at line 72 of file toy_multi_curve2d.py.
| dict toy_multi_curve2d.data = field[f"{interp[0]}_{comp_name}_field_out"].get() |
Definition at line 122 of file toy_multi_curve2d.py.
Definition at line 113 of file toy_multi_curve2d.py.
Definition at line 112 of file toy_multi_curve2d.py.
| list toy_multi_curve2d.dim2d = [100, 50] |
Definition at line 54 of file toy_multi_curve2d.py.
| int toy_multi_curve2d.fac = int(np.sqrt(size)) |
Definition at line 49 of file toy_multi_curve2d.py.
| dict toy_multi_curve2d.field |
Definition at line 96 of file toy_multi_curve2d.py.
| toy_multi_curve2d.grid = Curve2dGrid(f"{my_comp_name}_grid", vx, vy) |
Definition at line 74 of file toy_multi_curve2d.py.
| list toy_multi_curve2d.interpolations |
Definition at line 87 of file toy_multi_curve2d.py.
| str toy_multi_curve2d.my_comp_name = "PISM" |
Definition at line 36 of file toy_multi_curve2d.py.
| toy_multi_curve2d.points_cell = grid.def_points(Location.CELL, cx, cy) |
Definition at line 84 of file toy_multi_curve2d.py.
| toy_multi_curve2d.points_vertex = grid.def_points(Location.CORNER, vx, vy) |
Definition at line 85 of file toy_multi_curve2d.py.
Definition at line 67 of file toy_multi_curve2d.py.
| toy_multi_curve2d.rank = comp.comp_comm.rank |
Definition at line 40 of file toy_multi_curve2d.py.
Definition at line 56 of file toy_multi_curve2d.py.
| toy_multi_curve2d.size = comp.comp_comm.size |
Definition at line 39 of file toy_multi_curve2d.py.
Definition at line 55 of file toy_multi_curve2d.py.
| list toy_multi_curve2d.slice2d |
Definition at line 58 of file toy_multi_curve2d.py.
| toy_multi_curve2d.v_xyz = np.stack(lonlat2xyz(vx, vy), axis=-1) |
Definition at line 68 of file toy_multi_curve2d.py.
| toy_multi_curve2d.vx |
Definition at line 65 of file toy_multi_curve2d.py.
| toy_multi_curve2d.vy |
Definition at line 65 of file toy_multi_curve2d.py.
| toy_multi_curve2d.x = np.linspace(-.5, .5, dim2d[0]) |
Definition at line 61 of file toy_multi_curve2d.py.
| toy_multi_curve2d.y = np.linspace(-.5, .5, dim2d[1]) |
Definition at line 62 of file toy_multi_curve2d.py.
| toy_multi_curve2d.yac = YAC() |
Definition at line 35 of file toy_multi_curve2d.py.