Cosine Square in the Cardioid
by Klaus-Anton, Jul 26, 2024, 12:56 PM
![[asy]
// Figure 1
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
draw(G1--G2);
draw((.5,0)--G2);
draw(G1p--G1^^G2p--G2);
line lineG=line(G1,G2);
//draw(lineG);
//draw(line((.75,0),G3));
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw("$2t$",arc(origin,.2,0,degG1),fontsize(8));
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G2--G1));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.575),dir(origin--G1)*-I,fontsize(8));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2,black,FillDraw(white));
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/4/f/a/4fa340cecd881a8e7e45fa8073e5881ab47eb596.png)
Figure 1
Note 1: I want to lead your attention that the skewed tangent on the red circle intersects the cardioid twice. (Even if here in Figure 1 only one point is marked with a white dot. So - with only one dot - this it is too as Walser had done it.)
Note 2: See that the cardioid here is so drawn that the incircle has diameter 1. This circle so is often called the Circle of Thales, in distinction to the unitcircle, which has as radius

![[asy]
// Figure 2
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
draw(G1--G2);
draw((.5,0)--G2);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
pair G3=intersectionpoint(line(G1,G2),line(origin,dir(degrees(2*myt/3))));
//dot(G1p^^G2p);
line lineG=line(G1,G2);
//draw(lineG);
//draw(line((.75,0),G3));
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw(arc(origin,.2,0,degG1),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.75),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.75)),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.25),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.25)),fontsize(8));
draw(G1p--G1^^G2p--G2,red);
draw(line(origin,dir(degrees(myt))));
draw(line(origin,dir(degrees(2*myt/3))),blue+dotted);
pair G2pp=Relpoint(G1,G2,1.125GR);
draw(G2p--G2pp,red);
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G2--G1));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.575),dir(origin--G1)*-I,fontsize(8));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2^^G3,black,FillDraw(white));
draw(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2^^G3,black);
draw(rotate(degrees(2/3*myt))*.5(Cos(degrees(2/3*myt))+1),red);
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/6/9/2/692fef805ca1ae7003f6b5061de81f782c395cc0.png)
Figure 2: The blue dotted Line is drawn at
.

(The red small point seems to contradict my expectation.)
![[asy]
// Figure 3a
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
path sub_cardioid=polargraph(m,0,(1/6)*pi,operator ..);
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
draw(G1--G2);
draw((.5,0)--G2);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
pair G3=intersectionpoint(line(G1,G2),line(origin,dir(degrees(2*myt/3))));
//dot(G1p^^G2p);
line lineG=line(G1,G2);
//draw(lineG);
//draw(line((.75,0),G3));
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw(arc(origin,.2,0,degG1),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.75),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.75)),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.25),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.25)),fontsize(8));
draw(G1p--G1^^G2p--G2,red);
//draw(segment(line(origin,dir(degrees(myt)))));
draw(segment(line(origin,G2)));
//draw(line(origin,dir(degrees(2*myt/3))),blue+dotted);
pair G2pp=Relpoint(G1,G2,1.125GR);
draw(G2p--G2pp,red);
//draw(circle(G2,(13/84)));//whow!!! - rein gefühlt! 0.1547619047619048
// ((1/6)+(1/7))/2
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G2--G1));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.575),dir(origin--G1)*-I,fontsize(8));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2,black,FillDraw(white));
draw(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2,black);
//draw(rotate(degrees(2/3*myt))*.5(Cos(degrees(2/3*myt))+1),red);
//dot(conj(G1));
//draw(line((.5,0),(.5,1)));
//pair reflect_conj_G1=reflect((.5,0),(.5,1))*conj(G1) ;//bringt ja nichts, da auf line(line((.5,0),(.5,1)))
//draw(line(M,G2));
line lineMG2=line(M,G2);
real eu=exp(1);
point P=(eu-2,0);//Auch zu groß
//draw(parallel(P,lineMG2));
// aber reflect läuft.
// https://artofproblemsolving.com/community/q1h2011576p14100933
// https://asymptote.sourceforge.io/asymptote.pdf page 50
//draw(conj(G1)--foot(conj(G1),G1,G2));
//draw(reflect_conj_G1--foot(reflect_conj_G1,G1,G2));
//dot(origin);//AoPS
//draw(sub_cardioid,red);
//dot(G2pp);
//G3=intersectionpoint(line(G1,G2),sub_cardioid);// no matching function 'intersectionpoint(line, path)
dot(intersectionpoint(G2--G2pp,sub_cardioid),black,Fill(white));
draw(intersectionpoint(G2--G2pp,sub_cardioid));
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/5/b/5/5b56766f0972f5499efc4633c0c16b190589762b.png)
Figure 3a
![[asy]
// Figure 3b
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
path sub_cardioid=polargraph(m,0,(1/6)*pi,operator ..);
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
draw(G1--G2);
draw((.5,0)--G2);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
pair G3=intersectionpoint(line(G1,G2),line(origin,dir(degrees(2*myt/3))));
//dot(G1p^^G2p);
line lineG=line(G1,G2);
//draw(lineG);
//draw(line((.75,0),G3));
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw(arc(origin,.2,0,degG1),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.75),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.75)),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.25),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.25)),fontsize(8));
draw(G1p--G1^^G2p--G2,red);
//draw(segment(line(origin,dir(degrees(myt)))));
draw(segment(line(origin,G2)));
//draw(line(origin,dir(degrees(2*myt/3))),blue+dotted);
pair G2pp=Relpoint(G1,G2,1.125GR);
draw(G2p--G2pp,red);
//draw(circle(G2,(13/84)));//whow!!! - rein gefühlt! 0.1547619047619048
// ((1/6)+(1/7))/2
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G2--G1));
pair pairMfootOA=foot((origin+.5),origin,G1);
path MfootOA=origin+.5--foot((origin+.5),origin,G1);
real degMfootOA=degrees(dir(MfootOA));
draw(MfootOA,white+linewidth(.875));
perpendicularmark(foot((origin+.5),origin,G1),-dir(origin--G1)*dir(-135-90),white,PenMargin);
label(shift(relpoint(MfootOA,.4))*rotate(degMfootOA+180)*"$\sin(2t)$",relpoint(MfootOA,.4)//,dir(S+degMfootOA)
,-.85dir(G1--origin)
,white+fontsize(6));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.65),dir(origin--G1)*-I,fontsize(8));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2^^pairMfootOA,black,FillDraw(white));
draw(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2^^pairMfootOA,black);
//draw(rotate(degrees(2/3*myt))*.5(Cos(degrees(2/3*myt))+1),red);
//dot(conj(G1));
//draw(line((.5,0),(.5,1)));
//pair reflect_conj_G1=reflect((.5,0),(.5,1))*conj(G1) ;//bringt ja nichts, da auf line(line((.5,0),(.5,1)))
//draw(line(M,G2));
line lineMG2=line(M,G2);
real eu=exp(1);
point P=(eu-2,0);//Auch zu groß
//draw(parallel(P,lineMG2));
// aber reflect läuft.
// https://artofproblemsolving.com/community/q1h2011576p14100933
// https://asymptote.sourceforge.io/asymptote.pdf page 50
//draw(conj(G1)--foot(conj(G1),G1,G2));
//draw(reflect_conj_G1--foot(reflect_conj_G1,G1,G2));
//dot(origin);//AoPS
//draw(sub_cardioid,red);
//dot(G2pp);
//G3=intersectionpoint(line(G1,G2),sub_cardioid);// no matching function 'intersectionpoint(line, path)
//dot(intersectionpoint(G2--G2pp,sub_cardioid),black,Fill(white));
//draw(intersectionpoint(G2--G2pp,sub_cardioid));
//"
/*
real gr_irr=gr-.5;
real gr_irr_half=(gr-.5)/2;
//draw(//shift(1-gr^3/1,0)//"Quasi-Umkreis"
//shift(1-(gr^2/2),0)//fast
//shift(1-(gr^(gr_irr+2)/2),0)//auch nur fast, aber nach rechts
shift(1-(gr^(gr_irr_half+2)/2),0)//sieht schon "sehr gut" aus
//shift(1,0)
*rotate(180)
*cardioid);
pair M=(.5,0);
pair A=G1,B=G2;
dot(A);
dot(B);
dot(M,linewidth(15));//erscheint nicht
label("$M$",M);//erscheint nicht
draw(M--foot(M,origin,A),white+linewidth(.875));//erscheint nicht
*/
//draw(intersectionpoint(G2--G2pp,sub_cardioid),white);
//dot(origin+gr^8);//AoPS
//dot(origin+.5);
//draw(arc(origin+.5, .3,0,degMfootOA),white);//richtig
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/c/9/6/c9643fc7d3e278370c0ccc58623dc42399fdc2c7.png)
Figure 3b
(Attention, please!!! - The white Labeling here is wrong!)
![[asy]
// Figure 3c
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
path sub_cardioid=polargraph(m,0,(1/6)*pi,operator ..);
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
real t=degrees(dir(origin--G2));
real sin_2t=Sin(2t);
pair Cos_tSin_t=(Cos(t),Sin(t));
pair Cos_2tSin_2t=(Cos(2t),Sin(2t));
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
draw(G1--G2);
draw((.5,0)--G2);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
pair G3=intersectionpoint(line(G1,G2),line(origin,dir(degrees(2*myt/3))));
//dot(G1p^^G2p);
line lineG=line(G1,G2);
//draw(lineG);
//draw(line((.75,0),G3));
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw(arc(origin,.2,0,degG1),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.75),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.75)),fontsize(8));
label("$t$",relpoint(arc(origin,.2,0,degG1),.25),.8*dir(origin--relpoint(arc(origin,.2,0,degG1),.25)),fontsize(8));
draw(G1p--G1^^G2p--G2,red);
//draw(segment(line(origin,dir(degrees(myt)))));
draw(segment(line(origin,G2)));
//draw(line(origin,dir(degrees(2*myt/3))),blue+dotted);
pair G2pp=Relpoint(G1,G2,1.125GR);
draw(G2p--G2pp,red);
//draw(circle(G2,(13/84)));//whow!!! - rein gefühlt! 0.1547619047619048
// ((1/6)+(1/7))/2
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G2--G1));
pair pairMfootOA=foot((origin+.5),origin,G1);
path MfootOA=origin+.5--foot((origin+.5),origin,G1);
real degMfootOA=degrees(dir(MfootOA));
draw(MfootOA,white+linewidth(.875));
perpendicularmark(foot((origin+.5),origin,G1),-dir(origin--G1)*dir(-135-90),white,PenMargin);
draw(G2--Cos_tSin_t,dotted+red);
draw(G1--Cos_2tSin_2t,dotted+red);
label(scale(.85)*shift(relpoint(MfootOA,.425))*rotate(degMfootOA+180)*"$.5\sin(2t)$",relpoint(MfootOA,.425)//,dir(S+degMfootOA)
,-.85dir(G1--origin)
,white+fontsize(3));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.65),dir(origin--G1)*-I,fontsize(5));
real degG1G2=degrees(dir(G1--G2));
label(
rotate(degG1G2)*
"$(\cos(2t),\sin(2t))$",Cos_2tSin_2t
,dir(origin--Cos_2tSin_2t)
,fontsize(6));
label(
rotate(degG1G2)*
"$(\cos(t),\sin(t))$",Cos_tSin_t
,dir(origin--Cos_tSin_t)
,fontsize(6));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2^^pairMfootOA^^Cos_tSin_t^^Cos_2tSin_2t,black,FillDraw(white));
draw(origin^^(.5,0)//^^(.75,0)
^^Cos_tSin_t^^Cos_2tSin_2t
^^(1,0)^^G1^^G2^^pairMfootOA,black);
//draw(rotate(degrees(2/3*myt))*.5(Cos(degrees(2/3*myt))+1),red);
//dot(conj(G1));
//draw(line((.5,0),(.5,1)));
//pair reflect_conj_G1=reflect((.5,0),(.5,1))*conj(G1) ;//bringt ja nichts, da auf line(line((.5,0),(.5,1)))
//draw(line(M,G2));
line lineMG2=line(M,G2);
real eu=exp(1);
point P=(eu-2,0);//Auch zu groß
//draw(parallel(P,lineMG2));
// aber reflect läuft.
// https://artofproblemsolving.com/community/q1h2011576p14100933
// https://asymptote.sourceforge.io/asymptote.pdf page 50
//draw(conj(G1)--foot(conj(G1),G1,G2));
//draw(reflect_conj_G1--foot(reflect_conj_G1,G1,G2));
//dot(origin);//AoPS
//draw(sub_cardioid,red);
//dot(G2pp);
//G3=intersectionpoint(line(G1,G2),sub_cardioid);// no matching function 'intersectionpoint(line, path)
//dot(intersectionpoint(G2--G2pp,sub_cardioid),black,Fill(white));
//draw(intersectionpoint(G2--G2pp,sub_cardioid));
//"
/*
real gr_irr=gr-.5;
real gr_irr_half=(gr-.5)/2;
//draw(//shift(1-gr^3/1,0)//"Quasi-Umkreis"
//shift(1-(gr^2/2),0)//fast
//shift(1-(gr^(gr_irr+2)/2),0)//auch nur fast, aber nach rechts
shift(1-(gr^(gr_irr_half+2)/2),0)//sieht schon "sehr gut" aus
//shift(1,0)
*rotate(180)
*cardioid);
pair M=(.5,0);
pair A=G1,B=G2;
dot(A);
dot(B);
dot(M,linewidth(15));//erscheint nicht
label("$M$",M);//erscheint nicht
draw(M--foot(M,origin,A),white+linewidth(.875));//erscheint nicht
*/
//draw(intersectionpoint(G2--G2pp,sub_cardioid),white);
//dot(origin+gr^8);//AoPS
//dot(origin+.5);
//draw(arc(origin+.5, .3,0,degMfootOA),white);//richtig
//draw(circle(G2,arclength(G1--G2)^2));//Das ist es!!!?
//dot(origin+.01);//AoPS
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/a/7/7/a77271f3dd7289f8a69fa3d367595feadfe95a8c.png)
Figure 3c
![[asy]
//Figure 3d
usepackage("nicefrac");
size(10cm);
import graph;
real gr=(sqrt(5)-1)/2;
real GR=(sqrt(5)+1)/2;
real xmin=0, xmax=pi, xMAX=xmax+gr^3;
real ymin=-.125, ymax=1, yMAX=ymax+gr^3;
real function_of_cosine_square(real theta)
{
return (cos(theta))^2;
}
real function_of_halfed_sine(real theta)
{
return .5*sin(theta);
}
path path_cosine_square=graph(function_of_cosine_square, xmin,xmax);
path path_halfed_sine=graph(function_of_halfed_sine, xmin,xmax);
draw(path_cosine_square,green);
draw(path_halfed_sine,.85red);
// How to make STEP?
xaxis(xmin,xmax,RightTicks(NoZero,Step=.5,step=.25));//es fehlt ticks
yaxis(ymin,ymax,LeftTicks(.5,.25));
draw((xmax,0)--(xMAX,0),Arrow(TeXHead,size=gr*mm));
draw((0,ymax)--(0,yMAX),Arrow(TeXHead,size=gr*mm));
//label("$\cos^2\theta$",((5/16)*pi,function_of_cosine_square((5/16)*pi)),.8*SW,green);
label("$\cos^2\theta$",((1.5/8)*pi,function_of_cosine_square((1.5/8)*pi)),.8*SW,green);
label("$.5\sin\theta$",((4/8)*pi,function_of_halfed_sine((4/8)*pi)),1.0*N,.85red);
label("$\theta$",(xMAX,0),SE);
label("$y$",(0,yMAX),NW);
label(format("$\pi=%.3f\ldots$",pi),(.5pi,-gr),blue);
dot("$.5\pi$",(.5pi,0),N,blue,FillDraw(white));
dot("$\nicefrac{2}{8}\,\pi$",(.25pi,0),N,blue,FillDraw(white));
dot("$\nicefrac{1}{8}\,\pi$",(.125pi,0),N,blue,FillDraw(white));
dot("$\nicefrac{3}{8}\,\pi$",(.375pi,0),N,blue,FillDraw(white));
dot("$\pi$",(pi,0),N,blue,FillDraw(white));
shipout(bbox(2mm,FillDraw(lightred,invisible)));
[/asy]](http://latex.artofproblemsolving.com/5/6/8/568f5d6221bfeb748d2b1251ea2154ec448d2f3d.png)
Figure 3d: Graphs of y=cos²(theta) and of y=.5*sin(theta)
Range from Zero to pi (
) rad

![[asy]
//Figure 3dd
usepackage("nicefrac");
size(10cm);
import graph;
real gr=(sqrt(5)-1)/2;
real xmin=0, xmax=2pi, xMAX=xmax+gr^2;
real ymin=-1, ymax=1, yMAX=ymax+gr^2;
real function_of_cosine_square(real theta)
{
return (cos(theta))^2;
}
real function_of_halfed_sine(real theta)
{
return .5*sin(theta);
}
path path_cosine_square=graph(function_of_cosine_square, xmin,xmax);
path path_halfed_sine=graph(function_of_halfed_sine, xmin,xmax);
draw(path_cosine_square,green);
draw(path_halfed_sine,.85red);
// How to make STEP?
xaxis(xmin,xmax,fontsize(10),RightTicks(NoZero,Step=.5,step=.25));//es fehlt ticks
yaxis(ymin,ymax,fontsize(10),LeftTicks(.5,.25));
draw((xmax,0)--(xMAX,0),Arrow(TeXHead,size=.5*mm));
draw((0,ymax)--(0,yMAX),Arrow(TeXHead,size=.5*mm));
label("$\cos^2\theta$",(pi,function_of_cosine_square(pi)), 1.75*S*dir(-3),.9green);
label("$\nicefrac{1}{2}\,\sin\theta$",((4/8)*pi,function_of_halfed_sine((4/8)*pi)),1.0*N,.85red);
label("$\theta$",(xMAX,0),SE);
label("$y$",(0,yMAX),NW);
label(format("$\pi=%.3f\ldots$",pi),(pi,-.75),blue);
dot("$\nicefrac{1}{2}\,\pi$",(.5pi,0),.95N,blue,FillDraw(white));
dot("$\nicefrac{3}{2}\,\pi$",(1.5pi,0),.95N,blue,FillDraw(white));
dot("$\pi$",(pi,0),N,blue,FillDraw(white));
dot("$2\pi$",(2pi,0),N,blue,FillDraw(white));
shipout(bbox(2mm,FillDraw(lightred,invisible)));
[/asy]](http://latex.artofproblemsolving.com/texer/h/huusabci.png)
Figure 3dd: Graphs of y=cos²(theta) and of y=.5*sin(theta)


![[asy]
// Figure 4
size(0,150);
real GR=(sqrt(5)+1)/2;
real gr=(sqrt(5)-1)/2;
import graph;
import geometry;
pair Relpoint(pair P, pair Q, real r){return point(segment(P,Q),Relative(r));}
real m(real t) {return .5*(1+cos(t));}
path cardioid=polargraph(m,0,2pi,operator ..)--cycle;
pair G1=(.5,.5GR^.5);
pair M=(.5,0);
real degG1=degrees(dir(G1));
filldraw(cardioid,yellow+red);
filldraw(Circle((.5,0),.5),rgb(205, 080, 080) );
draw((0,-.75)--(0,.75),Arrow(size=2mm));
draw((0,0)--(1.225,0),Arrow(size=2mm));
draw(origin--(.5,.5GR^.5));
//draw(arc(origin,.3,0,degG1));//okay
real radG1=radians(degG1);
real myt=.5*radG1;
//draw(circle(origin,1*cos(myt)^2));// aha!!
pair G2=shift(.5,0)*.5dir(G1);
pair G1p=Relpoint(G2,G1,GR);
pair G2p=Relpoint(G1,G2,GR);
//pair G3=shift(.75,0)*.25dir(G1);
//pair G3[]=intersectionpoints(cardioid,line(G1,G2));// no matching function 'intersectionpoints(path, line)' pair G3[]=intersectionpoints(cardioid,line(G1,G2));
pair G3_help=shift(G2)*dir((G1--G2));
//dot(G3_help);
//draw(line(G1,G3_help));
//pair G3[]=intersectionpoints(cardioid,G1--G3_help));
//draw(circle(G2,sin(myt)^2));// das ist es nicht
//dot(G3);
//dot(G2);
//dot(G3);
pair O=origin,
A=G1,
B=G2,
Bp=(.5,0)
;
path Thales=circle((.5,0),.5);
real t=.5*degG1;
filldraw(origin--(1,0)--B--cycle,lightblue);
filldraw(origin--B--A--cycle,palered);
//filldraw(origin--);
draw(Thales);
draw(G1--G2);
draw((.5,0)--G2);
draw(G1p--G1^^G2p--G2);
line lineG=line(G1,G2);
draw("$2t$",arc(M,.2,0,degG1),fontsize(8));
draw(arc(origin,.2,0,degG1));
//draw(arc(G2,.5, dir(G2--origin), dir(G2--(.5,0)) ));//
//no matching function 'arc(pair, real, pair, pair)'
draw("$t$",arc(G2,.2, degrees(dir(G2--origin)), degrees(dir(G2--(.5,0))) ),fontsize(8));
label("$t$",arc(origin,.2,0,.5degG1),fontsize(8));
label("$t$",relpoint(arc(origin,.2,.5degG1,degG1),.45),.95dir(.75*degG1),fontsize(8));
perpfactor=.5;
perpendicularmark(G1, dir(G1--origin,G1--G2));
perpendicularmark(G2, dir(G2--M,G1--G2));
label(rotate(degrees(dir(origin--G2))-2.5)*"$\cos (t)$",relpoint(origin--G2,.5),dir(origin--G2)*dir(-90),fontsize(6));
label("$1$",(1+.125/2,0),S,fontsize(8));
label("$x$",(1+.125*1.2,0),2*N,fontsize(8));
label("$y$",(0, .75),2*N,fontsize(8));
label("$\frac{1}{2}$",(.5,0),1.5*S,fontsize(8));
label(rotate(degG1-1)*"$\cos^2 (t)$", relpoint(origin--G1,.575),dir(origin--G1)*-I,fontsize(6));
dot(origin^^(.5,0)//^^(.75,0)
^^(1,0)^^G1^^G2,black,FillDraw(white));
//dot(origin);//AoPS
shipout(scale(2)*bbox(2mm,invisible,Fill(rgb(064,224,208))));
[/asy]](http://latex.artofproblemsolving.com/0/4/4/044ea0c570782c7670c16acc9f571f1e7955b2cb.png)
Figure 4: Walser-Construction of the Cardioid
Continued Setting up of Similar Right Triangles on another
Building Prinziple is: Always with the Hypotenuse on the Leg of the Last one

Figure 5: Illustration with the Moons of Hippokrathes, three Tangents, and Rotated-Fermat-Point-One-Rule (see: Inspirations [7], there in the Link to Dörthe Haftendorn 2017)
Note: 3 Very, very similar is the building way in Figure 8 of [4] which there has been explained like this: „Die Kardioide ist die Enveloppe der auf den Katheten aufgesetzten Thaleskreise.“ (Halbkreise.) My translation into English: "The cardioid is the envelope of the Thales circles placed on the legs of the right triangle." (Semicircles.)
Note 4: Let us note here too Trigonometric Substitution. Mabe be (or not)) we will can find sth which here fits into the context too. Perhaps. We will look.

([4 Hans Walser 2020] Direct-Link: Animation 1)
Inspirations:
- Hans Walser 2022. Spiralen, Schraubenlinien und spiralartige Figuren. Mathematische Spielereien in zwei und drei Dimensionen. Springer Spektrum. Berlin, Germany. Abb. 5.45 Fibonacci-Spirale, Seite 98. ( Also available as ebook. In July 2024 there now has come an English Translation: Spirals, Helical Lines, and Spiral-Like Figures. Mathematical Playfulness in Two and Three Dimensions).
- Hans Walser 2021. Kardioide. Konstruktion eines Kardioidenpunktes mit nur einem Kreis
- Hans Walser 2021. Kardioide. - Kardioide5.html
- Hans Walser 2020. Kardioide als Enveloppe. - Die Kardioide ist Enveloppe von Möndchen des Hippokrates. Beweis. - From there: Direct-Link: Animation 1
- Hans Walser 2013. Die Herzkurve und die Möndchen des Hippokrates
- Klaus-Anton's blog Halbe Kardioide (mit Arbelos) - Animation
- Klaus-Anton's blog Coming nearer to construct the three parallel Tangents of the Cardioid
- Klaus-Anton's blog 2024. What is cos²(x)?
- Klaus-Anton's blog 2023. Trigonometric Identities in the Circle of Thales
This post has been edited 43 times. Last edited by Klaus-Anton, Aug 24, 2024, 12:41 PM