From 770277a569fffcbf53af77e9e2839686f36947a7 Mon Sep 17 00:00:00 2001 From: JGonzalez Date: Tue, 5 May 2026 12:15:21 +0200 Subject: [PATCH] Using average flux over the control volume --- src/modules/mesh/moduleMesh@boundaryEM.f90 | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/modules/mesh/moduleMesh@boundaryEM.f90 b/src/modules/mesh/moduleMesh@boundaryEM.f90 index b3f69bf..0bea30f 100644 --- a/src/modules/mesh/moduleMesh@boundaryEM.f90 +++ b/src/modules/mesh/moduleMesh@boundaryEM.f90 @@ -403,27 +403,22 @@ submodule(moduleMesh) boundaryEM node => mesh%nodes(nodes(n))%obj ! Minus sign as we look at the values exiting the surface (opposite to the normal) - ! Density is reescaled as 'den' has no data about the node volume + ! Density and momentum are reescaled as 'den' has no data about the node volume mom_nodes(n) = - dot_product(node%output(s)%mom, edge%normal)/(node%v*Vol_ref*n_ref) - ! Avoid the contribution of returning particles close to the edge - ! if (mom_nodes(n) < 0.0d0) then - ! mom_nodes(n) = 0.0d0 - - ! end if - ! den_nodes(n) = node%output(s)%den/(node%v*Vol_ref*n_ref) + den_nodes(n) = node%output(s)%den/(node%v*Vol_ref*n_ref) end do - mom_center = mom_center + qSpecies(s)*edge%gatherF(edge%centerXi(), edge%nNodes, mom_nodes) - ! den_center = den_center + edge%gatherF(edge%centerXi(), edge%nNodes, den_nodes) - ! charge_center = charge_center + qSpecies(s)*edge%gatherF(edge%centerXi(), edge%nNodes, den_nodes) + mom_center = mom_center + edge%gatherF(edge%centerXi(), edge%nNodes, mom_nodes) + den_center = den_center + edge%gatherF(edge%centerXi(), edge%nNodes, den_nodes) + charge_center = charge_center + qSpecies(s)*edge%gatherF(edge%centerXi(), edge%nNodes, den_nodes) end do - ! if (den_center > 1.0e-12) then - self%deltaElectricField(e) = self%deltaElectricField(e) + mom_center * tauMin + if (den_center > 1.0e-12) then + self%deltaElectricField(e) = self%deltaElectricField(e) + mom_center/den_center * charge_center * tauMin - ! end if + end if deallocate(nodes, mom_nodes, den_nodes)