Merge branch 'improve/mesh' into 'development'
Improvements to Triangles See merge request JorgeGonz/fpakc!3
This commit is contained in:
commit
95f81173f5
2 changed files with 12 additions and 5 deletions
|
|
@ -717,7 +717,6 @@ MODULE moduleMeshCyl
|
|||
self%n3%v = self%n3%v + self%arNodes(3)
|
||||
|
||||
!Derivatives in z/r for shape functions (node independent)
|
||||
!TODO: This is used because invJ.dPsi does not produce the right Electric field
|
||||
A = self%z(2)*self%r(3) - self%z(3)*self%r(2) + &
|
||||
self%z(3)*self%r(1) - self%z(1)*self%r(3) + &
|
||||
self%z(1)*self%r(2) - self%z(2)*self%r(1)
|
||||
|
|
@ -971,15 +970,23 @@ MODULE moduleMeshCyl
|
|||
|
||||
CLASS(meshVolCylTria), INTENT(in):: self
|
||||
REAL(8), INTENT(in):: xi(1:3)
|
||||
REAL(8):: dPsi(1:2,1:3)
|
||||
REAL(8):: dPsiR(1:2,1:3)!Derivative of shpae functions in global coordinates
|
||||
REAL(8):: invJ(1:2,1:2), detJ
|
||||
REAL(8):: phi(1:3)
|
||||
REAL(8):: dummy
|
||||
REAL(8):: EF(1:3)
|
||||
|
||||
phi = (/self%n1%emData%phi, &
|
||||
self%n2%emData%phi, &
|
||||
self%n3%emData%phi/)
|
||||
self%n3%emData%phi /)
|
||||
|
||||
EF(1) = -DOT_PRODUCT(self%dPsiZ(:), phi)
|
||||
EF(2) = -DOT_PRODUCT(self%dPsiR(:), phi)
|
||||
dPsi = self%dPsi(xi)
|
||||
detJ = self%detJac(xi,dPsi)
|
||||
invJ = self%invJac(xi,dPsi)
|
||||
dPsiR = MATMUL(invJ, dPsi)/detJ
|
||||
EF(1) = -DOT_PRODUCT(dPsiR(1,:), phi)
|
||||
EF(2) = -DOT_PRODUCT(dPsiR(2,:), phi)
|
||||
EF(3) = 0.D0
|
||||
|
||||
END FUNCTION gatherEFTria
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ MODULE moduleMesh
|
|||
CONTAINS
|
||||
PROCEDURE(initEdge_interface), DEFERRED, PASS:: init
|
||||
PROCEDURE(getNodesEdge_interface), DEFERRED, PASS:: getNodes
|
||||
PROCEDURE(randPosEdge_interface), DEFERRED, PASS:: randPos
|
||||
PROCEDURE(randPosEdge_interface), DEFERRED, PASS:: randPos
|
||||
|
||||
END TYPE meshEdge
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue