<- previous index next ->
Just extending seventh order PDE in four dimensions, to eight dimensions
Desired solution is U(x,y,z,t,u,v,w,p), given PDE:
∇4U + 2 ∇2U + 8 U = f(x,y,z,t,u,v,w,p)
∂4U(x,y,z,t,u,v,w,p)/∂x4 + ∂4U(x,y,z,t,u,v,w,p)/∂y4 +
∂4U(x,y,z,t,u,v,w,p)/∂z4 + ∂4U(x,y,z,t,u,v,w,p)/∂t4 +
∂4U(x,y,z,t,u,v,w,p)/∂u4 + ∂4U(x,y,z,t,u,v,w,p)/∂v4 +
∂4U(x,y,z,t,u,v,w,p)/∂w4 + ∂4U(x,y,z,t,u,v,w,p)/∂p4 +
2 ∂2U(x,y,z,t,u,v,w,p)/∂x2 + 2 ∂2U(x,y,z,t,u,v,w,p)/∂y2 +
2 ∂2U(x,y,z,t,u,v,w,p)/∂z2 + 2 ∂2U(x,y,z,t,u,v,w,p)/∂t2 +
2 ∂2U(x,y,z,t,u,v,w,p)/∂u2 + 2 ∂2U(x,y,z,t,u,v,w,p)/∂v2 +
2 ∂2U(x,y,z,t,u,v,w,p)/∂w2 + 2 ∂2U(x,y,z,t,u,v,w,p)/∂p2 +
8 U(x,y,z,t,u,v,w,p) = f(x,y,z,t,u,v,w,p)
Test a fourth order PDE in eight dimensions.
∇4U + 2 ∇2U + 8 U = f(x,y,z,t,u,v,w,p)
pde48hn_eq.java solver source code
pde48hn_eq_java.out verification output
∇4U + 2 ∇2U + 8 U = f(x,y,z,t,u,v,w,p)
pde48hn_eq.c solver source code
pde48hn_eq_c.out verification output
pde48hn_eq.adb solver source code
pde48hn_eq_ada.out verification output
pde48h_eq.adb solver source code
pde48h_eq_ada.out verification output
Some programs above also need:
nuderiv.java basic non uniform grid derivative
rderiv.java basic uniform grid derivative
simeq.java basic simultaneous equation
deriv.h basic derivatives
deriv.c basic derivatives
real_arrays.ads 2D arrays and operations
real_arrays.adb 2D arrays and operations
integer_arrays.ads 2D arrays and operations
integer_arrays.adb 2D arrays and operations
rderiv.adb derivative computation
inverse.adb inverse computation
Plotted output from pde48hn_eq.java execution
plot8d.java source code
User can select any two variables for 3D view.
User can select values for other variables, option to run all cases.
Then, going to a spherical coordinate system in 8 dimensions
gen_8d_sphere.c source equations
gen_8d_sphere_c.out verification output
The above was all Cartesian Coordinates, now Spherical Coordinates
faces.c source code for output
faces.out output for n dimensional cube and spheretest_faces.c source code for test
test_faces.out output of test
Spherical Output
faces.c running, data for various n-cubes, n-spheres, n dimensions
n=8-cube
8-cubes = 1
7-cubes = 16
6-cubes = 112
5-cubes = 448
4-cubes = 1120
cubes = 1792
2D faces = 1792
edges = 1024
vertices = 256
spheres of n dimensions
note: surface is derivative of volume
D-1 surface D volume
2D circle 2 Pi R Pi R^2
3D sphere 4 Pi R^2 4/3 Pi R^3
4D 4-sphere 2 Pi^2 R^3 1/2 Pi^2 R^4
5D 5-sphere 8/3 Pi^2 R^4 8/15 Pi^2 R^5
6D 6-sphere Pi^3 R^5 1/6 Pi^3 R^6
7D 7-sphere 16/15 Pi^3 R^6 16/105 Pi^3 R^7
8D 8-sphere 1/3 Pi^4 R^7 1/24 Pi^4 R^8
9D 9-sphere 32/105 Pi^4 R^8 32/945 Pi^4 R^9
volume V_n(R)= Pi^(n/2) R^n / gamma(n/2+1)
gamma(integer) = factorial(integer-1) gamma(5) = 24
gamma(1/2) = sqrt(Pi), gamma(n/2+1) = (2n)! sqrt(Pi)/(4^n n!)
or V_2k(R) = Pi^k R^2k/k! , V_2k+1 = 2 k! (4Pi)^k R^(2k+1)/(2k+1)!
surface area A_n(R) = d/dR V_n(R)
10D 10-sphere volume 1/120 Pi^5 R^10
10D 10-sphere area 1/12 Pi^5 R^9
one definition of sequence of n-spheres
a1, a2, a3, a4, a5, a6, a7 are angles, typ: theta, phi, ...
x1, x2, x3, x4, x5, x6, x7, x8 are Cartesian coordinates
x1^2 + x2^2 + x3^2 + x4^2 + x5^2 + x6^2 + x7^2 +x8^2 = R^2
Radius R = sqrt(R^2)
2D circle
x1 = R cos(a1) typ: x theta
x2 = R sin(a1) typ: y theta
R = sqrt(x1^2+x2^2)
a1 = arctan(x2/x1) or a1 = acos(x1/R)
3D sphere
x1 = R cos(a1) typ: z phi
x2 = R sin(a1) cos(a2) typ: x phi theta
x3 = R sin(a1) sin(a2) typ: y phi theta
R = sqrt(x1^2+x2^2+x3^2)
a1 = arctan(sqrt(x2^2+x3^2)/x1) or a1 = acos(x1/R)
a2 = arctan(x3/x2) or
a2 = acos(x2/sqrt(x2^2+x3^2)) if x3>=0
a2 = 2 Pi - acos(x2/sqrt(x2^2+x3^2)) if x3<0
4D 4-sphere continuing systematic notation, notice pattern
x1 = R cos(a1)
x2 = R sin(a1) cos(a2)
x3 = R sin(a1) sin(a2) cos(a3)
x4 = R sin(a1) sin(a2) sin(a3)
R = sqrt(x1^2+x2^2+x3^2+x4^2)
a1 = acos(x1/sqrt(x1^2+x2^2+x3^2+x4^2))
a2 = acos(x2/sqrt(x2^2+x3^2+x4^2))
a3 = acos(x3/sqrt(x3^2+x4^2)) if x4>=0
a3 = 2 Pi - acos(x3/sqrt(x3^2+x4^2)) if x4<0
5D 5-sphere
x1 = R cos(a1)
x2 = R sin(a1) cos(a2)
x3 = R sin(a1) sin(a2) cos(a3)
x4 = R sin(a1) sin(a2) sin(a3) cos(a4)
x5 = R sin(a1) sin(a2) sin(a3) sin(a4)
R = sqrt(x1^2+x2^2+x3^2+x4^2+x5^2)
a1 = acos(x1/sqrt(x1^2+x2^2+x3^2+x4^2+x5^2))
a2 = acos(x2/sqrt(x2^2+x3^2+x4^2+x5^2))
a3 = acos(x3/sqrt(x3^2+x4^2+x5^2))
a4 = acos(x4/sqrt(x4^2+x5^2)) if x5>=0
a4 = 2 Pi - acos(x4/sqrt(x4^2+x5^2)) if x5<0
6D 6-sphere
x1 = R cos(a1)
x2 = R sin(a1) cos(a2)
x3 = R sin(a1) sin(a2) cos(a3)
x4 = R sin(a1) sin(a2) sin(a3) cos(a4)
x5 = R sin(a1) sin(a2) sin(a3) sin(a4) cos(a5)
x6 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5)
R = sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2)
a1 = acos(x1/sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2))
a2 = acos(x2/sqrt(x2^2+x3^2+x4^2+x5^2+x6^2))
a3 = acos(x3/sqrt(x3^2+x4^2+x5^2+x6^2))
a4 = acos(x4/sqrt(x4^2+x5^2+x6^2))
a5 = acos(x5/sqrt(x5^2+x6^2)) if x6>=0
a5 = 2 Pi - acos(x5/sqrt(x5^2+x6^2)) if x6<0
7D 7-sphere
x1 = R cos(a1)
x2 = R sin(a1) cos(a2)
x3 = R sin(a1) sin(a2) cos(a3)
x4 = R sin(a1) sin(a2) sin(a3) cos(a4)
x5 = R sin(a1) sin(a2) sin(a3) sin(a4) cos(a5)
x6 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5) cos(a6)
x7 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5) sin(a6)
R = sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2+x7^2)
a1 = acos(x1/sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2+x7^2))
a2 = acos(x2/sqrt(x2^2+x3^2+x4^2+x5^2+x6^2+x7^2))
a3 = acos(x3/sqrt(x3^2+x4^2+x5^2+x6^2+x7^2))
a4 = acos(x4/sqrt(x4^2+x5^2+x6^2+x7^2))
a5 = acos(x5/sqrt(x5^2+x6^2+x7^2))
a6 = acos(x6/sqrt(x6^2+x6^2)) if x7>=0
a6 = 2 Pi - acos(x6/sqrt(x6^2+x7^2)) if x7<0
8D 8-sphere
x1 = R cos(a1)
x2 = R sin(a1) cos(a2)
x3 = R sin(a1) sin(a2) cos(a3)
x4 = R sin(a1) sin(a2) sin(a3) cos(a4)
x5 = R sin(a1) sin(a2) sin(a3) sin(a4) cos(a5)
x6 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5) cos(a6)
x7 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5) sin(a6) cos(a7)
x8 = R sin(a1) sin(a2) sin(a3) sin(a4) sin(a5) sin(a6) sin(a7)
R = sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2+x7^2+x8^2)
a1 = acos(x1/sqrt(x1^2+x2^2+x3^2+x4^2+x5^2+x6^2+x7^2+x8^2))
a2 = acos(x2/sqrt(x2^2+x3^2+x4^2+x5^2+x6^2+x7^2+x8^2))
a3 = acos(x3/sqrt(x3^2+x4^2+x5^2+x6^2+x7^2+x8^2))
a4 = acos(x4/sqrt(x4^2+x5^2+x6^2+x7^2+x8^2))
a5 = acos(x5/sqrt(x5^2+x6^2+x7^2+x8^2))
a6 = acos(x6/sqrt(x6^2+x7^2+x8^2))
a7 = acos(x7/sqrt(x7^2+x8^2)) if x8>=0
a7 = 2 Pi - acos(x7/sqrt(x7^2+x8^2)) if x8<0
R > 0 and |x1| ... |xn| at least one > 0
a1, a2, ... an-2 in range 0 to Pi
an-1 in range 0 to 2Pi
sin(0, Pi/4, Pi/2, 3Pi/4, Pi)=0.0000, 0.7071, 1.0000, 0.7071, 0.0000
cos(0, Pi/4, Pi/2, 3Pi/4, Pi)=1.0000, 0.7071, -0.0000, -0.7071, -1.0000
acos(1.0, .70, 0, -.70, -1.0)=0.0000, 0.7854, 1.5708, 2.3562, 3.1416
faces.c finished
It is left as an exercise to student to develop equations
for gradient and laplacian 4D to 8D spheres.
You won't find many open source or commercial 8D PDE packages
many lesser problems have many open source and commercial packages
en.wikipedia.org/wiki/list_of_finite_element_software_packages
<- previous index next ->