Файл:Эллиптические функции Якоби (на гиперболе Якоби).svg


Этот код также используется https://commons.wikimedia.org/w/File:Jacobi_Elliptic_Functions_(on_Jacobi_Ellipse).svg , но с другими входными параметрами, указанными в верхней части кода. (Чтобы скопировать код, отредактируйте, выберите и скопируйте)

(* Параметры *) b=0.7 ;\[Phi]=Chop[Амплитуда Якоби[0.60,1-1/b^2]]; (* График эллипса Якоби *) b=0,7 I ;\[Phi]=Chop[Амплитуда Якоби[0,55,1-1/b^2]]; (* График гиперболы Якоби *) m=1-1/b^2; u = Chop[N[u = EllipticF[\[Phi], m]]];


(* Эллиптические функции Якоби *) sc=Chop[JacobiSC[u,m]]; sn=Chop[JacobiSN[u,m]]; sd=Chop[JacobiSD[u,m]]; cs=Chop[JacobiCS[u,m]]; cn=Chop[JacobiCN[u,m]]; cd=Chop[JacobiCD[u,m]]; ns=Chop[JacobiNS[u,m]]; nc=Chop[JacobiNC[u,m]]; nd=Chop[JacobiND[u,m]]; ds=Chop[JacobiDS[u,m]]; dc=Chop[JacobiDC[u,m]]; dn=Chop[JacobiDN[u,m]];

(* Функции построения *) Clear[plot$hline,plot$vline,plot$rline] fontsize=18; plot$hline[start_,length_,color_,label_]:=Module[{v,labelpos}, (* Постройте горизонтальную линию со стрелкой и меткой *) v={{start,0},{start+length,0} }; меткаpos=v 2+{0,-0,0035}размер шрифта; Graphics[{Arrowheads[0.04],color,Arrow[v],Inset[Style[label,FontSize->fontsize],labelpos]}] ] plot$vline[start_,length_,color_,label_]:=Module[{v ,labelpos},(* Постройте вертикальную линию с меткой *) v={{start,0},{start,length}}; labelpos=Mean[v]+{0,0025 ,0}размер шрифта; Graphics[{color,Line[v],Inset[Style[label,FontSize->fontsize],labelpos]}] ] plot$rline[start_,length_,x_,y_,color_,label_]:=Module[{v, r,labelpos}, (* Построить радиальную линию со стрелкой и меткой *) r=Sqrt[x^2+y^2]; v={{0,0},{x/r,y/r}длина}; (* Не принимайте x^2+y^2=length^2, используйте x/r и y/r как косинус и синус *) labelpos=v 2 +{-0.004 ,0.0008}fontsize; Graphics[{Arrowheads[0.04],color,Arrow[v],Inset[Style[label,FontSize->fontsize],labelpos]}] ]

(* Угол \[Phi] *) r\[Phi]=0,2; Plot\[Phi]=Plot[Sqrt[(r\[Phi]^2-x^2)],{x,r\[Phi] Cos[\[Phi]],r\[Phi]},PlotStyle- >{Черный},Фон->RGBColor[1,1,1,.5]]; (* угол \[Phi] *) \[Phi]pos=(r\[Phi]+0,0033 размер шрифта){Cos[\[Phi]/2],Sin[\[Phi]/2]}; Plot\[Phi]={Plot\[Phi],Graphics[Text[Style["\[Phi]",FontSize->fontsize],\[Phi]pos]]};

(* Кривая Якоби, единичный круг и линия y=1 *) PlotC=Plot[Sqrt[(1-x^2)],{x,0,1},PlotStyle->{Black,Dotted},Background ->RGBColor[1,1,1,.5]]; (* Круг *) PlotJ1=Plot[Sqrt[b^2(1-x^2)],{x,0,Cot[\[Phi]]},PlotStyle->{Черный,Толщина[0,007]},Фон -> Нет]; (* Эллипс или гипербола *) PlotJ2=Plot[Sqrt[b^2(1-x^2)],{x,Min[{1,cd}],Max[{1,cd}]},PlotStyle-> {Красный,Толщина[0,007]},Фон->Нет]; (* Эллипс или гипербола, очерченная \[Phi] *) PlotTop=ListPlot[{{0,0},{0,1},{cs,1}},Joined->True,PlotStyle->{Black,Dotted} ]; (* Верх y=1 пунктирная линия *)