Fix for node volume
An issue in the node volume calculation in cylindrical coordinates was found. This was causing wrong conservation of current. Still to test with ALPHIE_Grid case. Still to check triangular element. Still to theck 1D radial geometry
This commit is contained in:
parent
cab07447b5
commit
dd1fca3fee
2 changed files with 19 additions and 6 deletions
|
|
@ -320,7 +320,18 @@ MODULE moduleMesh2DCyl
|
||||||
fPsi = self%fPsi(xi)
|
fPsi = self%fPsi(xi)
|
||||||
r = DOT_PRODUCT(fPsi,self%r)
|
r = DOT_PRODUCT(fPsi,self%r)
|
||||||
self%volume = r*detJ
|
self%volume = r*detJ
|
||||||
self%arNodes = fPsi*r*detJ
|
xi = (/-5.D-1, -5.D-1, 0.D0/)
|
||||||
|
r = DOT_PRODUCT(self%fPsi(xi),self%r)
|
||||||
|
self%arNodes(1) = fPsi(1)*r*detJ
|
||||||
|
xi = (/ 5.D-1, -5.D-1, 0.D0/)
|
||||||
|
r = DOT_PRODUCT(self%fPsi(xi),self%r)
|
||||||
|
self%arNodes(2) = fPsi(2)*r*detJ
|
||||||
|
xi = (/ 5.D-1, 5.D-1, 0.D0/)
|
||||||
|
r = DOT_PRODUCT(self%fPsi(xi),self%r)
|
||||||
|
self%arNodes(3) = fPsi(3)*r*detJ
|
||||||
|
xi = (/-5.D-1, 5.D-1, 0.D0/)
|
||||||
|
r = DOT_PRODUCT(self%fPsi(xi),self%r)
|
||||||
|
self%arNodes(4) = fPsi(4)*r*detJ
|
||||||
|
|
||||||
END SUBROUTINE areaQuad
|
END SUBROUTINE areaQuad
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -151,8 +151,9 @@ MODULE moduleMeshOutputGmsh2
|
||||||
INTEGER:: n
|
INTEGER:: n
|
||||||
REAL(8):: time
|
REAL(8):: time
|
||||||
CHARACTER(:), ALLOCATABLE:: fileName
|
CHARACTER(:), ALLOCATABLE:: fileName
|
||||||
CHARACTER (LEN=iterationDigits):: tstring
|
CHARACTER (LEN=iterationDigits):: tString
|
||||||
CHARACTER(:), ALLOCATABLE:: title
|
CHARACTER(:), ALLOCATABLE:: title
|
||||||
|
CHARACTER (LEN=2):: cString
|
||||||
|
|
||||||
SELECT TYPE(self)
|
SELECT TYPE(self)
|
||||||
TYPE IS(meshParticles)
|
TYPE IS(meshParticles)
|
||||||
|
|
@ -168,9 +169,9 @@ MODULE moduleMeshOutputGmsh2
|
||||||
|
|
||||||
IF (collOutput) THEN
|
IF (collOutput) THEN
|
||||||
time = DBLE(t)*tauMin*ti_ref
|
time = DBLE(t)*tauMin*ti_ref
|
||||||
WRITE(tstring, iterationFormat) t
|
WRITE(tString, iterationFormat) t
|
||||||
|
|
||||||
fileName='OUTPUT_' // tstring// '_Collisions.msh'
|
fileName='OUTPUT_' // tString// '_Collisions.msh'
|
||||||
WRITE(*, "(6X,A15,A)") "Creating file: ", fileName
|
WRITE(*, "(6X,A15,A)") "Creating file: ", fileName
|
||||||
OPEN (60, file = path // folder // '/' // fileName)
|
OPEN (60, file = path // folder // '/' // fileName)
|
||||||
|
|
||||||
|
|
@ -178,7 +179,8 @@ MODULE moduleMeshOutputGmsh2
|
||||||
|
|
||||||
DO k = 1, nCollPairs
|
DO k = 1, nCollPairs
|
||||||
DO c = 1, interactionMatrix(k)%amount
|
DO c = 1, interactionMatrix(k)%amount
|
||||||
WRITE(title, "(5A,I2)") '"Pair ', interactionMatrix(k)%sp_i%name, '-', interactionMatrix(k)%sp_j%name, ' collision ', c
|
WRITE(cString, "(I2)") c
|
||||||
|
title = '"Pair ' // interactionMatrix(k)%sp_i%name // '-' // interactionMatrix(k)%sp_j%name // ' collision ' // cString
|
||||||
CALL writeGmsh2HeaderElementData(60, title, t, time, 1, self%numVols)
|
CALL writeGmsh2HeaderElementData(60, title, t, time, 1, self%numVols)
|
||||||
DO n=1, self%numVols
|
DO n=1, self%numVols
|
||||||
WRITE(60, "(I6,I10)") n + numEdges, self%vols(n)%obj%tallyColl(k)%tally(c)
|
WRITE(60, "(I6,I10)") n + numEdges, self%vols(n)%obj%tallyColl(k)%tally(c)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue