The López-Martín-Rodríguez generalization of the Chen-Gackstatter surface of genus 2

<<Own`Mesh`

Weierstrass Data

Choose symmetry:

k=2;
a=1.7126824161948815`;
ρ=1/0.7579975385879295`;

k=4;
a=7.689122651348194`;
ρ=1/0.24150699361921593`;

phi1[z_]:=z^(1/k-1)(z-1)^(1/2)(z+1)^(1/2)(z-a)^(-1/2)(z+a)^(-1/2)

phi2[z_]:=z^(1-1/k)(z-1)^(-1/2)(z+1)^(-1/2)(z-a)^(1/2)(z+a)^(1/2)

dh[z_]:=1;

G[z_]:=ρ (((Sqrt[-1+z]) (z^(-1+(1/k))) (Sqrt[1+z]))/((Sqrt[-a+z]) (Sqrt[a+z])))

ω1[z_] :=( 1/ρ phi2[z]-ρ phi1[z] )/2;
ω2[z_] :=I(1/ρ  phi2[z]+ρ phi1[z])/2;
ω3[z_]:=dh[z]

cp=1.+I;

f0[z_]:=Re[NIntegrate[{ω1[w],
ω2[w],ω3[w]},{w,cp,z}]]

δ=f0[0]

f[z_]:=f0[z]-δ

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

Plotting the surface

ϵ=0.0000000001;

nx1=3;
nx2=3;
nx3=4;
ny=12;

ϵ=0.000000001;

m1=PolarDomain[Union[NRange[ϵ,1,nx1]^2,NRange[1,a,nx2],NRange[a,10.,nx3],SameTest->AlmostEqual],NRange[ϵ,Pi/2-ϵ,ny]];

fr1=MeshPlot3D[{f[x+I y],n[x+I y]},{x,y},m1];

fr2=MeshJoin[fr1,MeshRotate[fr1,StraightLine[{0,0,0},f[1.I]]]];

fr3=MeshJoin[fr2,MeshReflect[fr2,Plane[{1,0,0},0]]];

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

Show[gr=Mesh3DToGraphics3D[fr4]]