New physical surfaces implemented

This commit is contained in:
Jorge Gonzalez 2026-02-20 09:50:42 +01:00
commit ce6b6a41a6
11 changed files with 122 additions and 99 deletions

View file

@ -98,7 +98,7 @@ MODULE moduleMesh1DRad
!EDGE FUNCTIONS
!Init edge element
SUBROUTINE initEdge1DRad(self, n, p, btPart, btEM)
SUBROUTINE initEdge1DRad(self, n, p, ps)
USE moduleSpecies, only:nSpecies
USE moduleErrors
IMPLICIT NONE
@ -106,8 +106,8 @@ MODULE moduleMesh1DRad
CLASS(meshEdge1DRad), INTENT(out):: self
INTEGER, INTENT(in):: n
INTEGER, INTENT(in):: p(:)
INTEGER, INTENT(in):: btPart(1:nSpecies)
integer, intent(in):: btEM
INTEGER, INTENT(in):: ps
integer:: ps_index
REAL(8), DIMENSION(1:3):: r1
INTEGER:: s
@ -123,16 +123,12 @@ MODULE moduleMesh1DRad
self%normal = (/ 1.D0, 0.D0, 0.D0 /)
!Boundary particle linking
allocate(self%boundariesParticle(1:nSpecies))
!Assign functions to boundary
do s = 1, nSpecies
self%boundariesParticle(s)%obj => boundariesParticle(btPart(s))%obj
! Get Physical Surface index based on input numering
ps_index = physicalSurface_to_index(ps)
end do
! Add nodes to EM boundary
call boundariesEMLinking(btEM)%model%addNodes(self%getNodes(self%nNodes))
! Add elements to physical surface
call physicalSurfaces(ps_index)%addEdge(self%n)
call physicalSurfaces(ps_index)%addNode(self%n1%n)
end subroutine initEdge1DRad