Final implementation of a specific mesh for MCC, added a case for
cylFlow that used two meshes and the User Manual has been updated.
This commit is contained in:
parent
a2631f6b78
commit
cbcefb06c8
13 changed files with 10451 additions and 2017 deletions
|
|
@ -400,6 +400,33 @@ MODULE moduleMesh
|
|||
END INTERFACE
|
||||
|
||||
CONTAINS
|
||||
!Constructs the global K matrix
|
||||
SUBROUTINE constructGlobalK(self)
|
||||
IMPLICIT NONE
|
||||
|
||||
CLASS(meshParticles), INTENT(inout):: self
|
||||
INTEGER:: e
|
||||
INTEGER, ALLOCATABLE:: n(:)
|
||||
REAL(8), ALLOCATABLE:: localK(:,:)
|
||||
INTEGER:: nNodes, i, j
|
||||
|
||||
DO e = 1, self%numVols
|
||||
n = self%vols(e)%obj%getNodes()
|
||||
localK = self%vols(e)%obj%elemK()
|
||||
nNodes = SIZE(n)
|
||||
|
||||
DO i = 1, nNodes
|
||||
DO j = 1, nNodes
|
||||
self%K(n(i), n(j)) = self%K(n(i), n(j)) + localK(i, j)
|
||||
|
||||
END DO
|
||||
|
||||
END DO
|
||||
|
||||
END DO
|
||||
|
||||
END SUBROUTINE constructGlobalK
|
||||
|
||||
!Reset the output of node
|
||||
PURE SUBROUTINE resetOutput(self)
|
||||
USE moduleSpecies
|
||||
|
|
@ -627,31 +654,11 @@ MODULE moduleMesh
|
|||
|
||||
END SUBROUTINE doCollisions
|
||||
|
||||
!Constructs the global K matrix
|
||||
SUBROUTINE constructGlobalK(self)
|
||||
IMPLICIT NONE
|
||||
SUBROUTINE doCoulomb(self)
|
||||
IMPORT meshParticles
|
||||
|
||||
CLASS(meshParticles), INTENT(inout):: self
|
||||
INTEGER:: e
|
||||
INTEGER, ALLOCATABLE:: n(:)
|
||||
REAL(8), ALLOCATABLE:: localK(:,:)
|
||||
INTEGER:: nNodes, i, j
|
||||
|
||||
DO e = 1, self%numVols
|
||||
n = self%vols(e)%obj%getNodes()
|
||||
localK = self%vols(e)%obj%elemK()
|
||||
nNodes = SIZE(n)
|
||||
|
||||
DO i = 1, nNodes
|
||||
DO j = 1, nNodes
|
||||
self%K(n(i), n(j)) = self%K(n(i), n(j)) + localK(i, j)
|
||||
|
||||
END DO
|
||||
|
||||
END DO
|
||||
|
||||
END DO
|
||||
|
||||
END SUBROUTINE constructGlobalK
|
||||
END SUBROUTINE doCoulomb
|
||||
|
||||
END MODULE moduleMesh
|
||||
|
|
|
|||
|
|
@ -39,4 +39,14 @@ MODULE moduleMath
|
|||
|
||||
END FUNCTION normalize
|
||||
|
||||
!Norm 1 of vector
|
||||
PURE FUNCTION norm1(a) RESULT(b)
|
||||
IMPLICIT NONE
|
||||
REAL(8), DIMENSION(:), INTENT(in):: a
|
||||
REAL(8):: b
|
||||
|
||||
b = SUM(DABS(a))
|
||||
|
||||
END FUNCTION norm1
|
||||
|
||||
END MODULE moduleMath
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue