Rename of procedures in boundaries

This commit is contained in:
Jorge Gonzalez 2026-03-14 20:28:03 +01:00
commit 818f9fe37b
3 changed files with 61 additions and 55 deletions

View file

@ -664,13 +664,15 @@ MODULE moduleMesh
end type boundaryParticleGeneric
interface
module subroutine initWallTemperature(boundary, T, c)
! Init interfaces
! wallTemeprature
module subroutine wallTemperature_init(boundary, T, c)
CLASS(boundaryParticleGeneric), ALLOCATABLE, INTENT(inout):: boundary
REAL(8), INTENT(in):: T, c !Wall temperature and specific heat
end subroutine initWallTemperature
end subroutine wallTemperature_init
module subroutine initIonization(boundary, mImpact, m0, n0, v0, T0, ion, effTime, crossSection, eThreshold, electronSecondary)
module subroutine ionization_init(boundary, mImpact, m0, n0, v0, T0, ion, effTime, crossSection, eThreshold, electronSecondary)
class(boundaryParticleGeneric), allocatable, intent(inout):: boundary
real(8), intent(in):: mImpact
real(8), intent(in):: m0, n0, v0(1:3), T0 !Neutral properties
@ -680,20 +682,23 @@ MODULE moduleMesh
real(8), intent(in):: eThreshold
integer, optional, intent(in):: electronSecondary
end subroutine initIonization
end subroutine ionization_init
! quasiNeutrality
module subroutine quasiNeutrality_init(boundary, s_incident)
class(boundaryParticleGeneric), allocatable, intent(inout):: boundary
integer, intent(in):: s_incident
end subroutine quasiNeutrality_init
! outflowAdaptive
module subroutine outflowAdaptive_init(boundary, s_incident)
class(boundaryParticleGeneric), allocatable, intent(inout):: boundary
integer, intent(in):: s_incident
end subroutine outflowAdaptive_init
! Get the index of the species from its name
module function boundaryParticleName_to_Index(boundaryName) result(bp)
character(:), allocatable:: boundaryName
integer:: bp
@ -703,6 +708,7 @@ MODULE moduleMesh
end interface
abstract interface
! Apply the effects of the boundary to the particle
subroutine applyParticle_interface(self, edge, part)
use moduleSpecies
import boundaryParticleGeneric, meshEdge
@ -721,7 +727,7 @@ MODULE moduleMesh
end subroutine updateParticle_interface
! Update the values of the particle boundary model
! Write the values of the particle boundary model
subroutine printParticle_interface(self, fileID)
import boundaryParticleGeneric
@ -735,28 +741,28 @@ MODULE moduleMesh
!Reflecting boundary
TYPE, PUBLIC, EXTENDS(boundaryParticleGeneric):: boundaryReflection
CONTAINS
procedure, pass:: apply => reflection
procedure, pass:: apply => reflection_apply
END TYPE boundaryReflection
!Absorption boundary
TYPE, PUBLIC, EXTENDS(boundaryParticleGeneric):: boundaryAbsorption
CONTAINS
procedure, pass:: apply => absorption
procedure, pass:: apply => absorption_apply
END TYPE boundaryAbsorption
!Transparent boundary
TYPE, PUBLIC, EXTENDS(boundaryParticleGeneric):: boundaryTransparent
CONTAINS
procedure, pass:: apply => transparent
procedure, pass:: apply => transparent_apply
END TYPE boundaryTransparent
!Symmetry axis
TYPE, PUBLIC, EXTENDS(boundaryParticleGeneric):: boundaryAxis
CONTAINS
procedure, pass:: apply => symmetryAxis
procedure, pass:: apply => symmetryAxis_apply
END TYPE boundaryAxis
@ -765,7 +771,7 @@ MODULE moduleMesh
!Thermal velocity of the wall: square root(Wall temperature X specific heat)
REAL(8):: vTh
CONTAINS
procedure, pass:: apply => wallTemperature
procedure, pass:: apply => wallTemperature_apply
END TYPE boundaryWallTemperature
@ -781,7 +787,7 @@ MODULE moduleMesh
integer:: tally
integer(KIND=OMP_LOCK_KIND):: tally_lock
CONTAINS
procedure, pass:: apply => ionization
procedure, pass:: apply => ionization_apply
END TYPE boundaryIonization
@ -791,7 +797,7 @@ MODULE moduleMesh
integer:: s_incident ! species index of the incident species
type(meshEdgePointer), allocatable:: edges(:) !Array with edges
contains
procedure, pass:: apply => quasiNeutrality
procedure, pass:: apply => quasiNeutrality_apply
end type boundaryQuasiNeutrality
@ -801,82 +807,82 @@ MODULE moduleMesh
integer:: s_incident ! species index of the incident species
type(meshEdgePointer), allocatable:: edges(:) !Array with edges
contains
procedure, pass:: apply => outflowAdaptive
procedure, pass:: apply => outflowAdaptive_apply
end type boundaryOutflowAdaptive
interface
module subroutine reflection(self, edge, part)
module subroutine reflection_apply(self, edge, part)
use moduleSpecies
class(boundaryReflection), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine reflection
end subroutine reflection_apply
module subroutine absorption(self, edge, part)
module subroutine absorption_apply(self, edge, part)
use moduleSpecies
class(boundaryAbsorption), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine absorption
end subroutine absorption_apply
module subroutine transparent(self, edge, part)
module subroutine transparent_apply(self, edge, part)
use moduleSpecies
class(boundaryTransparent), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine transparent
end subroutine transparent_apply
module subroutine symmetryAxis(self, edge, part)
module subroutine symmetryAxis_apply(self, edge, part)
use moduleSpecies
class(boundaryAxis), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine symmetryAxis
end subroutine symmetryAxis_apply
module subroutine wallTemperature(self, edge, part)
module subroutine wallTemperature_apply(self, edge, part)
use moduleSpecies
class(boundaryWallTemperature), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine wallTemperature
end subroutine wallTemperature_apply
module subroutine ionization(self, edge, part)
module subroutine ionization_apply(self, edge, part)
use moduleSpecies
class(boundaryIonization), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine ionization
end subroutine ionization_apply
module subroutine quasiNeutrality(self, edge, part)
module subroutine quasiNeutrality_apply(self, edge, part)
use moduleSpecies
class(boundaryQuasiNeutrality), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine quasiNeutrality
end subroutine quasiNeutrality_apply
module subroutine outflowAdaptive(self, edge, part)
module subroutine outflowAdaptive_apply(self, edge, part)
use moduleSpecies
class(boundaryOutflowAdaptive), intent(inout):: self
class(meshEdge), intent(inout):: edge
class(particle), intent(inout):: part
end subroutine outflowAdaptive
end subroutine outflowAdaptive_apply
! Generic basic boundary conditions to use internally in the code
module subroutine genericReflection(edge, part)