Mercurial > repos > public > sbplib
annotate +multiblock/Surface.m @ 1347:ac54767ae1fb feature/poroelastic tip
Add interface, not fully compatible.
author | Martin Almquist <martin.almquist@it.uu.se> |
---|---|
date | Tue, 30 Apr 2024 14:58:35 +0200 |
parents | 24b2487b01c2 |
children |
rev | line source |
---|---|
542
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 classdef Surface < handle |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 properties |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 grid |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 surfs |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 ZData |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 CData |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 methods |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 function obj = Surface(g, gf) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 obj.grid = g; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 coords = obj.grid.points(); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 X = obj.grid.funcToPlotMatrices(coords(:,1)); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 Y = obj.grid.funcToPlotMatrices(coords(:,2)); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 V = obj.grid.funcToPlotMatrices(gf); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 holdState = ishold(); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 hold on |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 |
548
24b2487b01c2
Fix bugs in cell array initialization
Jonatan Werpers <jonatan@werpers.com>
parents:
542
diff
changeset
|
25 surfs = cell(1, obj.grid.nBlocks); |
542
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 for i = 1:obj.grid.nBlocks |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 surfs{i} = surf(X{i}, Y{i}, V{i}); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 if holdState == false |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 hold off |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
33 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
34 obj.surfs = [surfs{:}]; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
35 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
36 obj.ZData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
37 obj.CData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
38 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
39 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
40 function set(obj, propertyName, propertyValue) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
41 set(obj.surfs, propertyName, propertyValue); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
42 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
43 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
44 function obj = set.ZData(obj, gf) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
45 obj.ZData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
46 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
47 V = obj.grid.funcToPlotMatrices(gf); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
48 for i = 1:obj.grid.nBlocks |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
49 obj.surfs(i).ZData = V{i}; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
50 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
51 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
52 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
53 function obj = set.CData(obj, gf) |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
54 obj.CData = gf; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
55 |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
56 V = obj.grid.funcToPlotMatrices(gf); |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
57 for i = 1:obj.grid.nBlocks |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
58 obj.surfs(i).CData = V{i}; |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
59 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
60 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
61 end |
febd750965c4
Add classes for easy plotting of functions on a multi block grid
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
62 end |