Mercurial > repos > public > sbplib
annotate +multiblock/EmptyGrid.m @ 1037:2d7ba44340d0 feature/burgers1d
Pass scheme specific parameters as cell array. This will enabale constructDiffOps to be more general. In addition, allow for schemes returning function handles as diffOps, which is currently how non-linear schemes such as Burgers1d are implemented.
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Fri, 18 Jan 2019 09:02:02 +0100 |
parents | 6e6da40091b7 |
children |
rev | line source |
---|---|
585
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 classdef EmptyGrid < grid.Empty & multiblock.Grid |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 methods |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 function obj = EmptyGrid(D) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 obj@multiblock.Grid({},cell(0,0)); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 obj@grid.Empty(D); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 % n returns the number of points in the grid |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 function o = N(obj) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 o = N@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 % d returns the spatial dimension of the grid |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 function o = D(obj) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 o = D@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 % points returns a n x d matrix containing the coordinates for all points. |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 function X = points(obj) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 X = points@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 % Restricts the grid function gf on obj to the subgrid g. |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 function gf = restrictFunc(obj, gf, g) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
25 gf = restrictFunc@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 % Projects the grid function gf on obj to the grid g. |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 function gf = projectFunc(obj, gf, g) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 gf = projectFunc@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
33 % Return the grid.boundaryIdentifiers of all boundaries in a cell array. |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
34 function bs = getBoundaryNames(obj) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
35 bs = getBoundaryNames@grid.Empty(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
36 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
37 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
38 % Return coordinates for the given boundary |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
39 function b = getBoundary(obj, name) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
40 b = getBoundary@grid.Empty(name); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
41 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
42 |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
43 function s = size(obj) |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
44 s = size@multiblock.Grid(obj); |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
45 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
46 end |
6e6da40091b7
Add an empty type of multiblock grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
47 end |