Mercurial > repos > public > sbplib
annotate +grid/evalOnStaggered.m @ 1336:0666629aa183 feature/D2_boundary_opt
Add methods for creating grids with different grid point distributions for each coordinate direction, and also supports constructing periodic grids
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Fri, 13 May 2022 13:26:16 +0200 |
parents | 8aa0909125a4 |
children |
rev | line source |
---|---|
1274
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
1 function gf = evalOnStaggered(g, f, gridGroup, subGrids) |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
2 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
3 default_arg('gridGroup', 1); |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
4 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
5 gf = []; |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
6 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
7 if isa(g, 'multiblock.Grid') |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
8 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
9 nSubGrids = numel(g.grids{1}.gridGroups{gridGroup}); |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
10 default_arg('subGrids', 1:nSubGrids ); |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
11 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
12 for i = 1:g.nBlocks() |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
13 for j = subGrids |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
14 gf = [gf; grid.evalOn(g.grids{i}.gridGroups{gridGroup}{j}, f)]; |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
15 end |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
16 end |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
17 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
18 else |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
19 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
20 nSubGrids = numel(g.gridGroups{gridGroup}); |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
21 default_arg('subGrids', 1:nSubGrids ); |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
22 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
23 for j = subGrids |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
24 gf = [gf; grid.evalOn(g.grids{i}.gridGroups{gridGroup}{j}, f)]; |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
25 end |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
26 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
27 end |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
28 |
8aa0909125a4
Add support for plotting and evaluating on curvilinear multiblock staggered grids
Martin Almquist <malmquist@stanford.edu>
parents:
diff
changeset
|
29 end |