Chen - Gackstatter Surface

with higher dhedral symmetry

<<Own`Mesh`

Clear[phi1,phi2]

Weierstraß Data (g=1)

rho=((Gamma[(1/4)])/((Sqrt[6]) Gamma[(3/4)]))//N;

G[z_]:=((Sqrt[z])/(Sqrt[-1+(z^2)]));
dh[z_]:=1;

phi1[z_]:=z/((Sqrt[z])(Sqrt[(z^2-1)]));
phi2[z_]:=(z^2-1)/((Sqrt[z])(Sqrt[(z^2-1)]));

psi2[z_]:=(2/3) ((Sqrt[z]) (Sqrt[-1+z])(Sqrt[1+z])+2 EllipticF[I ArcSinh[(Sqrt[z])],-1]);
psi1[z_]:=(Sqrt[2]) (2 EllipticE[ArcSin[(Sqrt[1+z])],(1/2)]-EllipticF[ArcSin[(Sqrt[1+z])],(1/2)]);

om1[z_] :=-(rho psi1[z]-psi2[z]/ rho)/2;
om2[z_] :=I(rho psi1[z]+psi2[z]/rho )/2;
om3[z_] :=z;

Surface parametrization

f0={Re[-((2 (2 EllipticE[(1/2)]-EllipticK[(1/2)]) Gamma[(5/4)])/((Sqrt[3]) Gamma[(3/4)]))],-(1/2) Im[(((2 EllipticE[(1/2)]-EllipticK[(1/2)]) Gamma[(1/4)])/((Sqrt[3]) Gamma[(3/4)]))],0}//N

f[z_]:=Re[{om1[z],om2[z],om3[z]}]-f0;

n[z_]:=StereographicProjection[G[z]]

Weierstraß Data (g>1)

k=3;
exp=(k-1)/k;

fi1[z_]:=(1-z^2 )^exp/(z^exp);
fi2[z_]:= (z^exp)/(1-z^2 )^exp;

G[z_]:=(z^(-exp)) (((1-(z^2)))^exp)

phi1[z_]:=-(((z^(1-exp)) Hypergeometric2F1[((1-exp)/2),-exp,1+((1-exp)/2),(z^2)])/(-1+exp));
phi2[z_]:=(((z^(1+exp)) Hypergeometric2F1[((1+exp)/2),exp,1+((1+exp)/2),(z^2)])/(1+exp));

om1[z_] := (-rho*phi1[z] + phi2[z]/rho)/2;

om2[z_] := I*(rho*phi1[z] + phi2[z]/rho)/2;

om3[z_] := z;

rho=1/Sqrt[(((4^exp) Gamma[(3/2)-(exp/2)] Gamma[1+(exp/2)])/(Gamma[1-(exp/2)] Gamma[((3+exp)/2)]))]//N;

f[z_]:=Re[{om1[z],om2[z],om3[z]}]

n[z_]:=StereographicProjection[rho G[z]]

Paremetrization

r1=2.;(*radius for Enneper end*)
nr1=4;
nr2=4;
nt=8;

dm=RectangularDomain[NRange[0,1,nr1]⋃NRange[1,r1,nr2],NRange[0,Pi/2.,nt]];

ϵ=0.00000001;
polar[z_]:=Re[z]E^(I Im[z])+ϵ(1+I)

dm2=MeshApply[polar,dm];

Surface Generation

p1=MeshPlot3D[{f[x+I y],n[x+I y]},{x,y},dm2];

p2=MeshJoin[p1,MeshRotate[p1,StraightLine[{0,0,0},f[I]]]];

p3=MeshJoin[p2,MeshReflect[p2,Plane[{0,1,0},0]]];

p4=MeshJoin@@Table[MeshRotateZ[p3,i 2Pi/k,0],{i,0,k-1}];

Show[gr=Mesh3DToGraphics3D[p4]]