Back to testing Ampere. It works. The previous definition with the average was wrong

This commit is contained in:
Jorge Gonzalez 2026-05-06 12:00:46 +02:00
commit 26d22049a8

View file

@ -413,20 +413,23 @@ submodule(moduleMesh) boundaryEM
! Minus sign as we look at the values exiting the surface (opposite to the normal) ! Minus sign as we look at the values exiting the surface (opposite to the normal)
! Density and momentum are 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) mom_nodes(n) = - dot_product(node%output(s)%mom, edge%normal)/(node%v*Vol_ref*n_ref)
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 end do
mom_center = mom_center + edge%gatherF(edge%centerXi(), edge%nNodes, mom_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) ! 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) ! charge_center = charge_center + qSpecies(s)*edge%gatherF(edge%centerXi(), edge%nNodes, den_nodes)
mom_center = mom_center + qSpecies(s)*edge%gatherF(edge%centerXi(), edge%nNodes, mom_nodes)
end do end do
if (den_center > 1.0e-12) then ! if (den_center > 1.0e-12) then
self%deltaElectricField(e) = self%deltaElectricField(e) + mom_center/den_center * charge_center * tauMin ! self%deltaElectricField(e) = self%deltaElectricField(e) + mom_center/den_center * charge_center * tauMin
end if ! end if
self%deltaElectricField(e) = self%deltaElectricField(e) + mom_center * tauMin
deallocate(nodes, mom_nodes, den_nodes) deallocate(nodes, mom_nodes, den_nodes)