-
Notifications
You must be signed in to change notification settings - Fork 32
Description
Following what was done in #689 we need an implementation of the cylindrical and spherical versions of
- TotalVolume Total surface and volume derived quantities for cylindrical and spherical meshes #939
- TotalSurface Total surface and volume derived quantities for cylindrical and spherical meshes #939
- AverageVolume Average surface and volume derived quantities in Cylindrical and Spherical #820
- AverageSurface Average surface and volume derived quantities in Cylindrical and Spherical #820
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