annotate +grid/Nodes.m @ 1031:2ef20d00b386 feature/advectionRV

For easier comparison, return both the first order and residual viscosity when evaluating the residual. Add the first order and residual viscosity to the state of the RungekuttaRV time steppers
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Thu, 17 Jan 2019 10:25:06 +0100
parents 5b06d4afa732
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
875
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 classdef Nodes < grid.Grid
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 properties
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 coords
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 methods
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 % Creates a grid with one point for each row in coords.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 % The dimension equals the number of columns in coords.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 function obj = Nodes(coords)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 obj.coords = coords;
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 function o = N(obj)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 o = size(obj.coords, 1);
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 % d returns the spatial dimension of the grid
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18 function o = D(obj)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19 o = size(obj.coords, 2);
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 % points returns a n x d matrix containing the coordinates for all points.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 function X = points(obj)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 X = obj.coords;
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
26
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
27 % Restricts the grid function gf on obj to the subgrid g.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
28 function gf = restrictFunc(obj, gf, g)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
29 error('Not implemented');
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
30 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
31
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
32 % Projects the grid function gf on obj to the grid g.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
33 function gf = projectFunc(obj, gf, g)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
34 error('Not implemented');
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
36
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
37 % Return the grid.boundaryIdentifiers of all boundaries in a cell array.
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
38 function bs = getBoundaryNames(obj)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
39 error('Not implemented');
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
40 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
41
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
42 % Return coordinates for the given boundary
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
43 function b = getBoundary(obj, name)
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
44 error('Not implemented');
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
45 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
46 end
5b06d4afa732 Add grid for just a collection of nodes
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
47 end