Boundaries for EM almost done

This commit is contained in:
Jorge Gonzalez 2026-02-18 13:31:38 +01:00
commit 4c72e68246
9 changed files with 249 additions and 171 deletions

View file

@ -48,7 +48,19 @@ submodule(moduleMesh) boundaryParticle
self%n = b
CALL config%get(object // '.name', self%name, found)
if (.not. found) then
call criticalError('Required parameter "name" for EM boundary condition not found', &
'initBoundaryParticle')
end if
CALL config%get(object // '.type', bType, found)
if (.not. found) then
call criticalError('Required parameter "type" for EM boundary condition not found', &
'initBoundaryParticle')
end if
SELECT CASE(bType)
CASE('reflection')
ALLOCATE(boundaryReflection:: self)
@ -483,15 +495,16 @@ submodule(moduleMesh) boundaryParticle
end subroutine genericTransparent
function physicalSurface_to_id(physicalSurface) result(b)
function physicalSurface_to_boundaryParticleId(boundaryArray, physicalSurface) result(b)
implicit none
type(boundaryParticleLinking):: boundaryArray(:)
integer:: physicalSurface
integer:: b
integer:: bt
do bt=1, nPhysicalSurfaces
if (boundariesParticleLinking(bt)%physicalSurface == physicalSurface) then
if (boundaryArray(bt)%physicalSurface == physicalSurface) then
b = bt
exit
@ -500,6 +513,6 @@ submodule(moduleMesh) boundaryParticle
end do
end function physicalSurface_to_id
end function physicalSurface_to_boundaryParticleId
end submodule boundaryParticle