1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
// Peter Luschny's Condor function
// http://www.luschny.de/math/asy/ElCondorYElGamma.html
import palette;
import graph3;
size(300,300,IgnoreAspect);
currentprojection=orthographic(0,-1,0,center=true);
currentlight=White;
real K=7;
triple condor(pair t)
{
real y=t.y;
real x=t.x*y;
real e=gamma(y+1);
real ymx=y-x;
real ypx=y+x;
real a=gamma((ymx+1)/2);
real b=gamma((ymx+2)/2);
real c=gamma((ypx+1)/2);
real d=gamma((ypx+2)/2);
real A=cos(pi*ymx);
real B=cos(pi*ypx);
return (x,y,log(e)+log(a)*((A-1)/2)+log(b)*((-A-1)/2)+log(c)*((B-1)/2)+
log(d)*((-B-1)/2));
}
surface s=surface(condor,(-1,0),(1,K),16,Spline);
s.colors(palette(s.map(zpart),Rainbow()));
draw(s,render(compression=Low,merge=true));
|