Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 656ce0e

Browse filesBrowse files
committed
move fem staff to fem package
1 parent 3297f79 commit 656ce0e
Copy full SHA for 656ce0e

File tree

Expand file treeCollapse file tree

5 files changed

+39
-19
lines changed
Open diff view settings
Filter options
Expand file treeCollapse file tree

5 files changed

+39
-19
lines changed
Open diff view settings
Collapse file

‎src/symjava/examples/Example6.java‎

Copy file name to clipboardExpand all lines: src/symjava/examples/Example6.java
+15-11Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@
1010

1111
import Jama.Matrix;
1212
import symjava.bytecode.BytecodeFunc;
13+
import symjava.examples.fem.Element;
14+
import symjava.examples.fem.Mesh2D;
15+
import symjava.examples.fem.Node;
16+
import symjava.examples.fem.UnitRightTriangle;
1317
import symjava.math.Transformation;
1418
import symjava.matrix.SymMatrix;
1519
import symjava.numeric.NumInt;
@@ -168,9 +172,9 @@ public static void solve(Eq pde, Mesh2D mesh, Map<Integer, Double> dirichlet, St
168172
Element e = (Element)d;
169173
double[] nodeCoords = e.getNodeCoords();
170174
for(int i=0; i<shapeFuns.length; i++) {
171-
int idxI = e.nodes.get(i).index-1;
175+
int idxI = e.nodes.get(i).getIndex()-1;
172176
for(int j=0; j<shapeFuns.length; j++) {
173-
int idxJ = e.nodes.get(j).index-1;
177+
int idxJ = e.nodes.get(j).getIndex()-1;
174178
double t = lhsNInt[i][j].eval(nodeCoords);
175179
//System.out.println(idxI+" "+idxJ+" "+t);
176180
matA[idxI][idxJ] += t;
@@ -186,9 +190,9 @@ public static void solve(Eq pde, Mesh2D mesh, Map<Integer, Double> dirichlet, St
186190
Matrix b = new Matrix(vecb, vecb.length);
187191
if(dirichlet != null) {
188192
for(Node n : mesh.nodes) {
189-
Double diri = dirichlet.get(n.type);
193+
Double diri = dirichlet.get(n.getType());
190194
if(diri != null) {
191-
setDirichlet(A, b, n.index-1, diri);
195+
setDirichlet(A, b, n.getIndex()-1, diri);
192196
}
193197
}
194198
}
@@ -271,9 +275,9 @@ public static void solve2(Eq pde, Mesh2D mesh, Map<Integer, Double> dirichlet, S
271275
{tx*rx + ty*ry, tx*sx + ty*sy, tx*tx+ty*ty},
272276
};
273277
for(int i=0; i<3; i++) {
274-
int idxI = e.nodes.get(i).index-1;
278+
int idxI = e.nodes.get(i).getIndex()-1;
275279
for(int j=0; j<3; j++) {
276-
int idxJ = e.nodes.get(j).index-1;
280+
int idxJ = e.nodes.get(j).getIndex()-1;
277281
double t = lhs[i][j]*jac*0.5;
278282
matA[idxI][idxJ] += t;
279283
}
@@ -293,9 +297,9 @@ public static void solve2(Eq pde, Mesh2D mesh, Map<Integer, Double> dirichlet, S
293297
double y = y1*r+y2*s+y3*t;
294298
//f=-2*(x*x+y*y)+36
295299
double f = -2.0*(x*x+y*y)+36.0;
296-
vecb[e.nodes.get(0).index - 1] += f*r*jac*w;
297-
vecb[e.nodes.get(1).index - 1] += f*s*jac*w;
298-
vecb[e.nodes.get(2).index - 1] += f*t*jac*w;
300+
vecb[e.nodes.get(0).getIndex() - 1] += f*r*jac*w;
301+
vecb[e.nodes.get(1).getIndex() - 1] += f*s*jac*w;
302+
vecb[e.nodes.get(2).getIndex() - 1] += f*t*jac*w;
299303
}
300304

301305
}
@@ -307,9 +311,9 @@ public static void solve2(Eq pde, Mesh2D mesh, Map<Integer, Double> dirichlet, S
307311
Matrix b = new Matrix(vecb, vecb.length);
308312
if(dirichlet != null) {
309313
for(Node n : mesh.nodes) {
310-
Double diri = dirichlet.get(n.type);
314+
Double diri = dirichlet.get(n.getType());
311315
if(diri != null) {
312-
setDirichlet(A, b, n.index-1, diri);
316+
setDirichlet(A, b, n.getIndex()-1, diri);
313317
}
314318
}
315319
}
Collapse file
+9-4Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package symjava.examples;
1+
package symjava.examples.fem;
22

33
import java.util.ArrayList;
44
import java.util.List;
@@ -9,15 +9,20 @@
99

1010

1111
public class Element extends Domain {
12+
public List<Node> nodes = new ArrayList<Node>();
13+
1214
int index;
1315
int dim;
14-
List<Node> nodes = new ArrayList<Node>();
15-
16+
1617
public Element(String label, Expr ...coordVars) {
1718
this.label = label;
1819
this.coordVars = coordVars;
1920
}
2021

22+
public int getIndex() {
23+
return this.index;
24+
}
25+
2126
public void setIndex(int index) {
2227
this.index = index;
2328
}
@@ -40,7 +45,7 @@ public int getDim() {
4045
return dim;
4146
}
4247

43-
double[] getNodeCoords() {
48+
public double[] getNodeCoords() {
4449
double[] rlt = new double[nodes.size()*dim];
4550
int index = 0;
4651
for(int j=0; j<dim; j++) {
Collapse file
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package symjava.examples;
1+
package symjava.examples.fem;
22

33
import java.io.BufferedReader;
44
import java.io.File;
Collapse file
+13-2Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,31 @@
1-
package symjava.examples;
1+
package symjava.examples.fem;
22

33
public class Node {
44
int index;
5-
double[] coords;
65
int type = 0;
6+
7+
public double[] coords;
8+
79
public Node(double ...coords) {
810
this.coords = coords;
911
}
1012

13+
public int getIndex() {
14+
return this.index;
15+
}
16+
1117
public void setIndex(int index) {
1218
this.index = index;
1319
}
1420

21+
public int getType() {
22+
return this.type;
23+
}
24+
1525
public void setType(int type) {
1626
this.type = type;
1727
}
28+
1829

1930
public int getDim() {
2031
return coords.length;
Collapse file

‎…/symjava/examples/UnitRightTriangle.java‎ ‎…java/examples/fem/UnitRightTriangle.java‎src/symjava/examples/UnitRightTriangle.java renamed to src/symjava/examples/fem/UnitRightTriangle.java src/symjava/examples/UnitRightTriangle.java renamed to src/symjava/examples/fem/UnitRightTriangle.java

Copy file name to clipboardExpand all lines: src/symjava/examples/fem/UnitRightTriangle.java
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package symjava.examples;
1+
package symjava.examples.fem;
22

33
import java.util.List;
44

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.