import math; import graph3; import palette; size3(8cm,8cm,3cm,IgnoreAspect); size(8cm,0); currentprojection=perspective(camera=(9.73,1.26,2.31)); real a=1; real f(pair z){ real tempo=0.01-((z.x^2+z.y^2)^2-a^2*(z.x^2-z.y^2))^2; if(tempo>=0) return sqrt(tempo); else return 0; } limits((-1.3,-.55,-.05),(1.4,.55,.4)); xaxis3(Label("$x$",1),blue,arrow=Arrow3); yaxis3(Label("$y$",1) ,blue,arrow=Arrow3); zaxis3(Label("$z$",1),blue,arrow=Arrow3); surface s=surface(f,(-1.1,-.5),(1.1,.5),95,75,monotonic); draw(s,yellow,black);