✊🏿 Black Lives Matter. Please consider donating to Black Girls Code today.
⚡️ Concerned about the grid? Kyle Baranko teaches how to predicting peak loads using XGBoost. Register for the August webinar!

3D surface of parabolic mirror

Hello, i need make a parabolic mirror surface but i don’t know how. I make a flat mirrors with go.Surface and work fine, but for curved surface maybe not work fine (?).

The mirror have axis rotation, therefore i use a parametric equation:

phi=0*np.pi/180
##phi=0 → parable open to right
##phi=90 → parable open to up

malla=[ ]
perfil=[ ]

V=[0,0]
foco=4
dt=0.001

t=np.arange(-(p[1]/4) , (p[1]/4)+dt , dt)
##p[1]=0.5 in this case

y=(V[0] + (foco/2)*np.cos(phi)t**2 + foconp.sin(phi)*t)
z=(V[1] + (foco/2)*np.sin(phi)t**2 - foconp.cos(phi)*t)

x=np.arange(0,4,dt)
xx , yy = np.meshgrid( x , y )

malla.append([xx,yy])
perfil.append(z)

surf=go.Surface(x=malla[0][0][0],
y=malla[0][1],
z=perfil[0])

fig=go.Figure(data)
po.plot(fig)

I hope you can help me, any idea or solution is welcome!! :grinning:

imagen