Open RemDelaporteMathurin opened 5 months ago
This is going to be very useful, I'm planning to help soon
@gabriele-ferrero If you wanna do the TotalVolume and TotalSurface ones I can do the Average ones
@jhdark @gabriele-ferrero I "assigned" you to this issue. Let me know if you need help and if you want to have this in 1.3
I suppose, HydrogenFlux
and ThermalFlux
also require cylindrical/spherical versions.
@rekomodo is having a go at implementing the remaining classes
Following what was done in #689 we need an implementation of the cylindrical and spherical versions of
2D axisymmetric
In 2D axisymmetric, the surface element ds is ds = r dr dtheta or ds = r dz dtheta In both cases, in fenics integrating a function f is
assemble(f * r * ds)
where r is the radius.dV = r dr dtheta dz Integrating a function f in fenics is therefore
assemble(f * r * dx)
where r is the radius.1D spherical
The surface element in 1D spherical is: dS_r = r^2 sin(theta) dtheta dphi The integral of f on a spherical surface is therefore integral(f dS_r) = integral(f r^2 sin(theta) dtheta dphi) = (phi2 - phi1) (-cos(theta2) + cos(theta1)) f r^2 The volume element is
dV = r^2 sin(theta) dr dtheta dphi the integral of f on a spherical volume is therefore
integral(f dV) = (phi2 - phi1) (-cos(theta2) + cos(theta1)) integral(f r^2 dr)
phi is the polar angle and theta is the azimuthal angle