763 lines
30 KiB
Mathematica
763 lines
30 KiB
Mathematica
(* Content-type: application/vnd.wolfram.mathematica *)
|
|
|
|
(*** Wolfram Notebook File ***)
|
|
(* http://www.wolfram.com/nb *)
|
|
|
|
(* CreatedBy='Mathematica 12.2' *)
|
|
|
|
(*CacheID: 234*)
|
|
(* Internal cache information:
|
|
NotebookFileLineBreakTest
|
|
NotebookFileLineBreakTest
|
|
NotebookDataPosition[ 158, 7]
|
|
NotebookDataLength[ 29251, 754]
|
|
NotebookOptionsPosition[ 27548, 714]
|
|
NotebookOutlinePosition[ 28951, 750]
|
|
CellTagsIndexPosition[ 28908, 747]
|
|
WindowFrame->Normal*)
|
|
|
|
(* Beginning of Notebook Content *)
|
|
Notebook[{
|
|
Cell[BoxData[{
|
|
RowBox[{"ClearAll", "[",
|
|
RowBox[{"iCurvaturePlotHelper", ",", " ", "CurvaturePlot"}], "]"}], "\n",
|
|
RowBox[{
|
|
RowBox[{"iCurvaturePlotHelper", "[",
|
|
RowBox[{
|
|
RowBox[{"f_", "?",
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Head", "[", "#", "]"}], " ", "=!=", " ", "List"}], " ",
|
|
"&"}], ")"}]}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t_", ",", " ", "tmin_", ",", " ", "tmax_"}], "}"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"x0_", ",", " ", "y0_"}], "}"}], ",", " ", "\[Theta]0_"}],
|
|
"}"}], ",", " ",
|
|
RowBox[{"opts", " ", ":", " ",
|
|
RowBox[{"OptionsPattern", "[", "]"}]}]}], "]"}], " ", ":=", " ",
|
|
RowBox[{"Module", "[",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
"sol", ",", " ", "\[Theta]", ",", " ", "x", ",", " ", "y", ",", " ",
|
|
"if"}], "}"}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"sol", " ", "=", " ",
|
|
RowBox[{"NDSolve", "[",
|
|
RowBox[{
|
|
RowBox[{"{", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"\[Theta]", "'"}], "[", "t", "]"}], " ", "==", " ", "f"}],
|
|
",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", "'"}], "[", "t", "]"}], " ", "==", " ",
|
|
RowBox[{"Cos", "[",
|
|
RowBox[{"\[Theta]", "[", "t", "]"}], "]"}]}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"y", "'"}], "[", "t", "]"}], " ", "==", " ",
|
|
RowBox[{"Sin", "[",
|
|
RowBox[{"\[Theta]", "[", "t", "]"}], "]"}]}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"\[Theta]", "[", "tmin", "]"}], " ", "==", " ",
|
|
"\[Theta]0"}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"x", "[", "tmin", "]"}], " ", "==", " ", "x0"}], ",", "\n",
|
|
" ",
|
|
RowBox[{
|
|
RowBox[{"y", "[", "tmin", "]"}], " ", "==", " ", "y0"}]}], "\n",
|
|
" ", "}"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"x", ",", " ", "y"}], "}"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",", " ",
|
|
"opts"}], "]"}]}], ";", "\n", " ",
|
|
RowBox[{"if", " ", "=", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"x", "[", "#", "]"}], ",", " ",
|
|
RowBox[{"y", "[", "#", "]"}]}], "}"}], " ", "&"}], " ", "/.", " ",
|
|
RowBox[{"First", "[", "sol", "]"}]}]}], ";", "\n", " ", "if"}]}],
|
|
"\n", " ", "]"}]}], "\n",
|
|
RowBox[{
|
|
RowBox[{"CurvaturePlot", "[",
|
|
RowBox[{"f_", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t_", ",", " ", "tmin_", ",", " ", "tmax_"}], "}"}], ",", " ",
|
|
RowBox[{"opts", " ", ":", " ",
|
|
RowBox[{"OptionsPattern", "[", "]"}]}]}], "]"}], " ", ":=", " ",
|
|
RowBox[{"CurvaturePlot", "[",
|
|
RowBox[{"f", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"0", ",", " ", "0"}], "}"}], ",", " ", "0"}], "}"}], ",", " ",
|
|
"opts"}], "]"}]}], "\n",
|
|
RowBox[{
|
|
RowBox[{"CurvaturePlot", "[",
|
|
RowBox[{"f_", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t_", ",", " ", "tmin_", ",", " ", "tmax_"}], "}"}], ",", " ",
|
|
RowBox[{"p", " ", ":", " ",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"x0_", ",", " ", "y0_"}], "}"}], ",", " ", "\[Theta]0_"}],
|
|
"}"}]}], ",", " ",
|
|
RowBox[{"opts", " ", ":", " ",
|
|
RowBox[{"OptionsPattern", "[", "]"}]}]}], "]"}], " ", ":=", " ",
|
|
RowBox[{"Module", "[",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
"\[Theta]", ",", " ", "x", ",", " ", "y", ",", " ", "sol", ",", " ",
|
|
"rlsplot", ",", " ", "rlsndsolve", ",", " ", "if", ",", " ", "ifs"}],
|
|
"}"}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"rlsplot", " ", "=", " ",
|
|
RowBox[{"FilterRules", "[",
|
|
RowBox[{
|
|
RowBox[{"{", "opts", "}"}], ",", " ",
|
|
RowBox[{"Options", "[", "ParametricPlot", "]"}]}], "]"}]}], ";", "\n",
|
|
" ",
|
|
RowBox[{"rlsndsolve", " ", "=", " ",
|
|
RowBox[{"FilterRules", "[",
|
|
RowBox[{
|
|
RowBox[{"{", "opts", "}"}], ",", " ",
|
|
RowBox[{"Options", "[", "NDSolve", "]"}]}], "]"}]}], ";", "\n", " ",
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Head", "[", "f", "]"}], " ", "===", " ", "List"}], ",", "\n",
|
|
" ",
|
|
RowBox[{
|
|
RowBox[{"ifs", " ", "=", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"iCurvaturePlotHelper", "[",
|
|
RowBox[{"#", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",",
|
|
" ", "p", ",", " ",
|
|
RowBox[{"Evaluate", "@",
|
|
RowBox[{"(",
|
|
RowBox[{"Sequence", " ", "@@", " ", "rlsndsolve"}], ")"}]}]}],
|
|
"]"}], " ", "&"}], " ", "/@", " ", "f"}]}], ";", "\n", " ",
|
|
RowBox[{"ParametricPlot", "[",
|
|
RowBox[{
|
|
RowBox[{"Evaluate", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"#", "[", "tplot", "]"}], " ", "&"}], " ", "/@", " ",
|
|
"ifs"}], "]"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"tplot", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",",
|
|
" ",
|
|
RowBox[{"Evaluate", "@",
|
|
RowBox[{"(",
|
|
RowBox[{"Sequence", " ", "@@", " ", "rlsplot"}], ")"}]}]}],
|
|
"]"}]}], "\n", " ", ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"if", " ", "=", " ",
|
|
RowBox[{"iCurvaturePlotHelper", "[",
|
|
RowBox[{"f", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"t", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",",
|
|
" ", "p", ",", " ",
|
|
RowBox[{"Evaluate", "@",
|
|
RowBox[{"(",
|
|
RowBox[{"Sequence", " ", "@@", " ", "rlsndsolve"}], ")"}]}]}],
|
|
"]"}]}], ";", "\n", " ",
|
|
RowBox[{"ParametricPlot", "[",
|
|
RowBox[{
|
|
RowBox[{"Evaluate", "[",
|
|
RowBox[{"if", "[", "tplot", "]"}], "]"}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"tplot", ",", " ", "tmin", ",", " ", "tmax"}], "}"}], ",",
|
|
" ",
|
|
RowBox[{"Evaluate", "@",
|
|
RowBox[{"(",
|
|
RowBox[{"Sequence", " ", "@@", " ", "rlsplot"}], ")"}]}]}],
|
|
"]"}]}]}], "\n", " ", "]"}]}]}], "\n", " ", "]"}]}]}], "Input",
|
|
TextAlignment->Center,
|
|
FontFamily->"Segoe UI Symbol",
|
|
FontSize->10,
|
|
FontWeight->"Normal",
|
|
CellLabel->
|
|
"3/24/24 14:22:34 \
|
|
In[760]:=",ExpressionUUID->"296ee68d-611b-4f39-8505-8dc995c0ca11"],
|
|
|
|
Cell[BoxData[{
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"ariasD", "[", "0", "]"}], " ", "=", " ", "1"}], ";"}], "\n",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"ariasD", "[",
|
|
RowBox[{"n_Integer", "?", "Positive"}], "]"}], " ", ":=", " ",
|
|
RowBox[{
|
|
RowBox[{"ariasD", "[", "n", "]"}], " ", "=", " ",
|
|
RowBox[{
|
|
RowBox[{"Sum", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"2", "^",
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{"k", " ",
|
|
RowBox[{"(",
|
|
RowBox[{"k", " ", "-", " ", "1"}], ")"}]}], " ", "-", " ",
|
|
RowBox[{"n", " ",
|
|
RowBox[{"(",
|
|
RowBox[{"n", " ", "-", " ", "1"}], ")"}]}]}], ")"}], "/",
|
|
"2"}], ")"}]}], " ",
|
|
RowBox[{
|
|
RowBox[{"ariasD", "[", "k", "]"}], "/",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"n", " ", "-", " ", "k", " ", "+", " ", "1"}], ")"}],
|
|
"!"}]}]}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"k", ",", " ", "0", ",", " ",
|
|
RowBox[{"n", " ", "-", " ", "1"}]}], "}"}]}], "]"}], "/",
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{"2", "^", "n"}], " ", "-", " ", "1"}], ")"}]}]}]}],
|
|
";"}], "\n",
|
|
RowBox[{
|
|
RowBox[{"iFabiusF", "[", "x_", "]"}], " ", ":=", " ",
|
|
RowBox[{"Module", "[",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"prec", " ", "=", " ",
|
|
RowBox[{"Precision", "[", "x", "]"}]}], ",", " ", "n", ",", " ", "p",
|
|
",", " ", "q", ",", " ", "s", ",", " ", "tol", ",", " ", "w", ",", " ",
|
|
"y", ",", " ", "z"}], "}"}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{"x", " ", "<", " ", "0"}], ",", " ",
|
|
RowBox[{"Return", "[",
|
|
RowBox[{"0", ",", " ", "Module"}], "]"}]}], "]"}], ";", " ",
|
|
RowBox[{"tol", " ", "=", " ",
|
|
RowBox[{"10", "^",
|
|
RowBox[{"(",
|
|
RowBox[{"-", "prec"}], ")"}]}]}], ";", "\n", " ",
|
|
RowBox[{"z", " ", "=", " ",
|
|
RowBox[{"SetPrecision", "[",
|
|
RowBox[{"x", ",", " ", "Infinity"}], "]"}]}], ";", " ",
|
|
RowBox[{"s", " ", "=", " ", "1"}], ";", " ",
|
|
RowBox[{"y", " ", "=", " ", "0"}], ";", "\n", " ",
|
|
RowBox[{"z", " ", "=", " ",
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{"0", " ", "<=", " ", "z", " ", "<=", " ", "2"}], ",", " ",
|
|
RowBox[{"1", " ", "-", " ",
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{"1", " ", "-", " ", "z"}], "]"}]}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"q", " ", "=", " ",
|
|
RowBox[{"Quotient", "[",
|
|
RowBox[{"z", ",", " ", "2"}], "]"}]}], ";", "\n", " ",
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"ThueMorse", "[", "q", "]"}], " ", "==", " ", "1"}], ",",
|
|
" ",
|
|
RowBox[{"s", " ", "=", " ",
|
|
RowBox[{"-", "1"}]}]}], "]"}], ";", "\n", " ",
|
|
RowBox[{"1", " ", "-", " ",
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{"1", " ", "-", " ", "z", " ", "+", " ",
|
|
RowBox[{"2", " ", "q"}]}], "]"}]}]}]}], "]"}]}], ";", "\n", " ",
|
|
RowBox[{"While", "[",
|
|
RowBox[{
|
|
RowBox[{"z", " ", ">", " ", "0"}], ",", "\n", " ",
|
|
RowBox[{
|
|
RowBox[{"n", " ", "=", " ",
|
|
RowBox[{"-",
|
|
RowBox[{"Floor", "[",
|
|
RowBox[{"RealExponent", "[",
|
|
RowBox[{"z", ",", " ", "2"}], "]"}], "]"}]}]}], ";", " ",
|
|
RowBox[{"p", " ", "=", " ",
|
|
RowBox[{"2", "^", "n"}]}], ";", "\n", " ",
|
|
RowBox[{"z", " ", "-=", " ",
|
|
RowBox[{"1", "/", "p"}]}], ";", " ",
|
|
RowBox[{"w", " ", "=", " ", "1"}], ";", "\n", " ",
|
|
RowBox[{"Do", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"w", " ", "=", " ",
|
|
RowBox[{
|
|
RowBox[{"ariasD", "[", "m", "]"}], " ", "+", " ",
|
|
RowBox[{"p", " ", "z", " ",
|
|
RowBox[{"w", "/",
|
|
RowBox[{"(",
|
|
RowBox[{"n", " ", "-", " ", "m", " ", "+", " ", "1"}],
|
|
")"}]}]}]}]}], ";", " ",
|
|
RowBox[{"p", " ", "/=", " ", "2"}]}], ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"m", ",", " ", "n"}], "}"}]}], "]"}], ";", "\n", " ",
|
|
RowBox[{"y", " ", "=", " ",
|
|
RowBox[{"w", " ", "-", " ", "y"}]}], ";", "\n", " ",
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Abs", "[", "w", "]"}], " ", "<", " ",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[", "y", "]"}], " ", "tol"}]}], ",", " ",
|
|
RowBox[{"Break", "[", "]"}]}], "]"}]}]}], "]"}], ";", "\n", " ",
|
|
RowBox[{"SetPrecision", "[",
|
|
RowBox[{
|
|
RowBox[{"s", " ",
|
|
RowBox[{"Abs", "[", "y", "]"}]}], ",", " ", "prec"}], "]"}]}]}],
|
|
"]"}]}], "\n",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"FabiusF", "[", "Infinity", "]"}], " ", "=", " ",
|
|
RowBox[{"Interval", "[",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"-", "1"}], ",", " ", "1"}], "}"}], "]"}]}], ";"}], "\n",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"FabiusF", "[",
|
|
RowBox[{"x_", "?", "NumberQ"}], "]"}], " ", "/;", " ",
|
|
RowBox[{"If", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Im", "[", "x", "]"}], " ", "==", " ", "0"}], ",", " ",
|
|
RowBox[{"TrueQ", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Composition", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"BitAnd", "[",
|
|
RowBox[{"#", ",", " ",
|
|
RowBox[{"#", " ", "-", " ", "1"}]}], "]"}], " ", "&"}], ",", " ",
|
|
"Denominator"}], "]"}], "[", "x", "]"}], " ", "==", " ", "0"}],
|
|
"]"}], ",", " ", "False"}], "]"}]}], " ", ":=", " ",
|
|
RowBox[{"iFabiusF", "[", "x", "]"}]}], "\n",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"Derivative", "[", "n_Integer", "]"}], "[", "FabiusF", "]"}], " ",
|
|
":=", " ",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"2", "^",
|
|
RowBox[{"(",
|
|
RowBox[{"n", " ",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"n", " ", "+", " ", "1"}], ")"}], "/", "2"}]}], ")"}]}], " ",
|
|
RowBox[{"FabiusF", "[",
|
|
RowBox[{
|
|
RowBox[{"2", "^", "n"}], " ", "#"}], "]"}]}], " ", "&"}]}], "\n",
|
|
RowBox[{
|
|
RowBox[{"SetAttributes", "[",
|
|
RowBox[{"FabiusF", ",", " ",
|
|
RowBox[{"{",
|
|
RowBox[{"NumericFunction", ",", " ", "Listable"}], "}"}]}], "]"}],
|
|
";"}]}], "Input",
|
|
TextAlignment->Center,
|
|
FontFamily->"Segoe UI Symbol",
|
|
FontSize->10,
|
|
FontWeight->"Normal",
|
|
CellLabel->"3/24/24 14:53:08 In[986]:=",
|
|
CellID->161896613,ExpressionUUID->"0d96d3fd-dac5-4a15-921c-c113c196ee35"],
|
|
|
|
Cell[CellGroupData[{
|
|
|
|
Cell[BoxData[{
|
|
RowBox[{
|
|
RowBox[{"\:1513\:1515", "=",
|
|
RowBox[{"{", " ",
|
|
RowBox[{
|
|
RowBox[{"WorkingPrecision", "\[Rule]", "10"}], ",",
|
|
RowBox[{"MaxRecursion", "\[Rule]", "0"}], ",",
|
|
RowBox[{"Ticks", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{"Automatic", ",", "Automatic"}], "}"}]}], ",",
|
|
RowBox[{"ImageSize", "\[Rule]", "320"}], ",",
|
|
RowBox[{"PlotRange", "\[Rule]", "Full"}], ",",
|
|
RowBox[{"Frame", "\[Rule]", " ", "True"}], ",",
|
|
RowBox[{"Axes", "\[Rule]", " ", "False"}], ",",
|
|
RowBox[{"GridLines", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{", "0", "}"}], ",",
|
|
RowBox[{"{", "0", "}"}]}], "}"}]}], " ", ",",
|
|
RowBox[{"PlotStyle", "\[Rule]",
|
|
RowBox[{"GrayLevel", "[",
|
|
RowBox[{"168", "/", "256"}], "]"}]}], ",",
|
|
RowBox[{"FrameStyle", "\[Rule]", " ",
|
|
RowBox[{"GrayLevel", "[",
|
|
RowBox[{"178", "/", "256"}], "]"}]}]}], " ", "}"}]}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"\[CapitalPi]", "=", "2"}], ";",
|
|
RowBox[{"\:1450\:1455", "=", "4"}], ";",
|
|
RowBox[{"M", "=", ".5"}], ";",
|
|
RowBox[{"\[CapitalPi]\[CapitalPi]", "=", "4"}], ";"}], "\n",
|
|
RowBox[{
|
|
RowBox[{"\:15f1\:15f4", "=",
|
|
RowBox[{"Evaluate", "[",
|
|
RowBox[{"SetPrecision", "[",
|
|
RowBox[{
|
|
RowBox[{"SetAccuracy", "[",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"-", "1"}], ")"}], "^",
|
|
RowBox[{"Floor", "[",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ")"}], "/", "2"}], "]"}]}], " ",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{"Mod", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ",", "2"}], "]"}], "-", "1"}], "]"}], "^",
|
|
"\[CapitalPi]"}]}], ")"}], "]"}], "^",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "/", "\[CapitalPi]"}], ")"}]}]}], ")"}], "/",
|
|
"2"}], "+", ".5"}], "]"}]}], ")"}], ",", "Infinity"}], "]"}],
|
|
",", "Infinity"}], "]"}], "]"}]}], ";"}], "\[IndentingNewLine]",
|
|
RowBox[{"Grid", "[",
|
|
RowBox[{"{",
|
|
RowBox[{"{", "\[IndentingNewLine]",
|
|
RowBox[{"Manipulate", "[", "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"Column", "[",
|
|
RowBox[{"{", "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"CurvaturePlot", "[",
|
|
RowBox[{
|
|
RowBox[{"Evaluate", "[",
|
|
RowBox[{"SetPrecision", "[",
|
|
RowBox[{
|
|
RowBox[{"SetAccuracy", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"-", "1"}], ")"}], "^",
|
|
RowBox[{"Floor", "[",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ")"}], "/", "2"}], "]"}]}], " ",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{"Mod", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ",", "2"}], "]"}], "-", "1"}], "]"}], "^",
|
|
"\[CapitalPi]"}]}], ")"}], "]"}], "^",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "/", "\[CapitalPi]"}], ")"}]}]}], ")"}], "/",
|
|
"2"}], "+", ".5"}], "]"}]}], ")"}], "-", "M"}], ",",
|
|
"Infinity"}], "]"}], ",", "Infinity"}], "]"}], "]"}], ",",
|
|
RowBox[{"{",
|
|
RowBox[{"x", ",", "0", ",",
|
|
RowBox[{"4", "\[Pi]"}]}], "}"}], ",",
|
|
RowBox[{"Evaluate", "[", "\:1513\:1515", "]"}], ",",
|
|
RowBox[{"FrameTicks", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"Range", "[",
|
|
RowBox[{
|
|
RowBox[{"-", "16"}], ",", "16", ",",
|
|
RowBox[{"1", "/", "2"}]}], "]"}], ",",
|
|
RowBox[{"Range", "[",
|
|
RowBox[{
|
|
RowBox[{"-", "4"}], ",", "4", ",",
|
|
RowBox[{"1", "/", "2"}]}], "]"}]}], "}"}]}], " ", ",",
|
|
RowBox[{"PlotPoints", "\[Rule]",
|
|
RowBox[{"1", "+",
|
|
RowBox[{"2", "^", "\[CapitalPi]\[CapitalPi]"}]}]}]}], "]"}],
|
|
"\[IndentingNewLine]", ",", "\[IndentingNewLine]",
|
|
RowBox[{"Plot", "[",
|
|
RowBox[{
|
|
RowBox[{"Evaluate", "[",
|
|
RowBox[{"SetPrecision", "[",
|
|
RowBox[{
|
|
RowBox[{"SetAccuracy", "[",
|
|
RowBox[{
|
|
RowBox[{".5", "-",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{"-", "1"}], ")"}], "^",
|
|
RowBox[{"Floor", "[",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ")"}], "/", "2"}], "]"}]}], " ",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "-",
|
|
RowBox[{
|
|
RowBox[{"Abs", "[",
|
|
RowBox[{
|
|
RowBox[{"Mod", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"x", " ", "/", "Pi"}], "*", "\:1450\:1455"}], "+",
|
|
"1"}], ",", "2"}], "]"}], "-", "1"}], "]"}], "^",
|
|
"\[CapitalPi]"}]}], ")"}], "]"}], "^",
|
|
RowBox[{"(",
|
|
RowBox[{"1", "/", "\[CapitalPi]"}], ")"}]}]}], ")"}], "/",
|
|
"2"}], "+", ".5"}], "]"}]}], ")"}], "-", "M"}], ",",
|
|
"Infinity"}], "]"}], ",", "Infinity"}], "]"}], "]"}], ",",
|
|
RowBox[{"{",
|
|
RowBox[{"x", ",", "0", ",",
|
|
RowBox[{"4", "\[Pi]"}]}], "}"}], ",",
|
|
RowBox[{"Evaluate", "[", "\:1513\:1515", "]"}], ",",
|
|
RowBox[{"AspectRatio", "\[Rule]",
|
|
RowBox[{"1", "/", "8"}]}], ",",
|
|
RowBox[{"FrameTicks", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"Range", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"-", "16"}], "*", "Pi"}], ",",
|
|
RowBox[{"16", "*", "Pi"}], ",",
|
|
RowBox[{"Pi", "/", "2"}]}], "]"}], ",",
|
|
RowBox[{"Range", "[",
|
|
RowBox[{
|
|
RowBox[{"-", "1"}], ",", "1", ",",
|
|
RowBox[{"1", "/", "2"}]}], "]"}]}], "}"}]}], " ", ",",
|
|
RowBox[{"PlotPoints", "\[Rule]",
|
|
RowBox[{"1", "+",
|
|
RowBox[{"2", "^", "\[CapitalPi]\[CapitalPi]"}]}]}]}], " ",
|
|
"]"}]}], "\[IndentingNewLine]", "}"}], "]"}], "\[IndentingNewLine]",
|
|
",", "\[IndentingNewLine]",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"\[CapitalPi]", ",", "1"}], "}"}], ",", "0", ",", "16", ",",
|
|
".25"}], "}"}], ",",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"\:1450\:1455", ",", "4"}], "}"}], ",", "0", ",", "16", ",",
|
|
".25"}], "}"}], ",",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"M", ",", "0"}], "}"}], ",", "0", ",", "1", ",", ".125"}],
|
|
"}"}], ",",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"\[CapitalPi]\[CapitalPi]", ",", "8"}], "}"}], ",", "0", ",",
|
|
"16", ",", "1"}], "}"}], "\[IndentingNewLine]", ",",
|
|
RowBox[{"FrameMargins", "\[Rule]", "0"}]}], "\[IndentingNewLine]",
|
|
"]"}], "\[IndentingNewLine]", "}"}], "}"}], "]"}]}], "Input",
|
|
TextAlignment->Center,
|
|
FontFamily->"Segoe UI Symbol",
|
|
FontSize->10,
|
|
FontWeight->"Normal",ExpressionUUID->"e9af63b5-ce7c-4f02-8437-ec7c3b69790f"],
|
|
|
|
Cell[BoxData[
|
|
TagBox[GridBox[{
|
|
{
|
|
TagBox[
|
|
StyleBox[
|
|
DynamicModuleBox[{$CellContext`\:1450\:1455$$ = 4, $CellContext`M$$ =
|
|
0, $CellContext`\[CapitalPi]$$ =
|
|
1, $CellContext`\[CapitalPi]\[CapitalPi]$$ = 8, Typeset`show$$ = True,
|
|
Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
|
|
Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
|
|
"\"untitled\"", Typeset`specs$$ = {{{
|
|
Hold[$CellContext`\[CapitalPi]$$], 1}, 0, 16, 0.25}, {{
|
|
Hold[$CellContext`\:1450\:1455$$], 4}, 0, 16, 0.25}, {{
|
|
Hold[$CellContext`M$$], 0}, 0, 1, 0.125}, {{
|
|
Hold[$CellContext`\[CapitalPi]\[CapitalPi]$$], 8}, 0, 16, 1}},
|
|
Typeset`size$$ = {320., {222., 227.}}, Typeset`update$$ = 0,
|
|
Typeset`initDone$$, Typeset`skipInitDone$$ = True},
|
|
DynamicBox[Manipulate`ManipulateBoxes[
|
|
1, StandardForm,
|
|
"Variables" :> {$CellContext`\:1450\:1455$$ = 4, $CellContext`M$$ =
|
|
0, $CellContext`\[CapitalPi]$$ =
|
|
1, $CellContext`\[CapitalPi]\[CapitalPi]$$ = 8},
|
|
"ControllerVariables" :> {},
|
|
"OtherVariables" :> {
|
|
Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
|
|
Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
|
|
Typeset`specs$$, Typeset`size$$, Typeset`update$$,
|
|
Typeset`initDone$$, Typeset`skipInitDone$$}, "Body" :> Column[{
|
|
$CellContext`CurvaturePlot[
|
|
Evaluate[
|
|
SetPrecision[
|
|
|
|
SetAccuracy[(1 -
|
|
Abs[((-1)^
|
|
Floor[(($CellContext`x/Pi) $CellContext`\:1450\:1455$$ +
|
|
1)/2] Abs[
|
|
1 - Abs[
|
|
Mod[($CellContext`x/Pi) $CellContext`\:1450\:1455$$ + 1,
|
|
2] - 1]^$CellContext`\[CapitalPi]$$]^(
|
|
1/$CellContext`\[CapitalPi]$$))/2 +
|
|
0.5]) - $CellContext`M$$, Infinity],
|
|
Infinity]], {$CellContext`x, 0, 4 Pi},
|
|
Evaluate[$CellContext`\:1513\:1515], FrameTicks -> {
|
|
Range[-16, 16, 1/2],
|
|
Range[-4, 4, 1/2]}, PlotPoints ->
|
|
1 + 2^$CellContext`\[CapitalPi]\[CapitalPi]$$],
|
|
Plot[
|
|
Evaluate[
|
|
SetPrecision[
|
|
SetAccuracy[
|
|
0.5 - (1 -
|
|
Abs[((-1)^
|
|
Floor[(($CellContext`x/Pi) $CellContext`\:1450\:1455$$ +
|
|
1)/2] Abs[
|
|
1 - Abs[
|
|
Mod[($CellContext`x/Pi) $CellContext`\:1450\:1455$$ + 1,
|
|
2] - 1]^$CellContext`\[CapitalPi]$$]^(
|
|
1/$CellContext`\[CapitalPi]$$))/2 +
|
|
0.5]) - $CellContext`M$$, Infinity],
|
|
Infinity]], {$CellContext`x, 0, 4 Pi},
|
|
Evaluate[$CellContext`\:1513\:1515], AspectRatio -> 1/8,
|
|
FrameTicks -> {
|
|
Range[(-16) Pi, 16 Pi, Pi/2],
|
|
Range[-1, 1, 1/2]}, PlotPoints ->
|
|
1 + 2^$CellContext`\[CapitalPi]\[CapitalPi]$$]}],
|
|
"Specifications" :> {{{$CellContext`\[CapitalPi]$$, 1}, 0, 16,
|
|
0.25}, {{$CellContext`\:1450\:1455$$, 4}, 0, 16,
|
|
0.25}, {{$CellContext`M$$, 0}, 0, 1,
|
|
0.125}, {{$CellContext`\[CapitalPi]\[CapitalPi]$$, 8}, 0, 16,
|
|
1}}, "Options" :> {FrameMargins -> 0}, "DefaultOptions" :> {}],
|
|
ImageSizeCache->{345., {340., 345.}},
|
|
SingleEvaluation->True],
|
|
Deinitialization:>None,
|
|
DynamicModuleValues:>{},
|
|
SynchronousInitialization->True,
|
|
UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
|
|
UnsavedVariables:>{Typeset`initDone$$},
|
|
UntrackedVariables:>{Typeset`size$$}], "Manipulate",
|
|
Deployed->True,
|
|
StripOnInput->False],
|
|
Manipulate`InterpretManipulate[1]]}
|
|
},
|
|
AutoDelete->False,
|
|
GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}],
|
|
"Grid"]], "Output",
|
|
FontFamily->"Segoe UI Symbol",
|
|
FontSize->10,
|
|
CellLabel->
|
|
"3/24/24 17:03:33 \
|
|
Out[1958]=",ExpressionUUID->"d798a34d-f2da-42c6-8aa3-1c805195e5c5"]
|
|
}, Open ]]
|
|
},
|
|
WindowToolbars->"EditBar",
|
|
WindowSize->{1680, 984},
|
|
WindowMargins->{{-4, Automatic}, {Automatic, -4}},
|
|
FrontEndVersion->"12.2 for Microsoft Windows (64-bit) (December 12, 2020)",
|
|
StyleDefinitions->Notebook[{
|
|
Cell[
|
|
StyleData[StyleDefinitions -> "Default.nb"], TextAlignment -> Center,
|
|
FontFamily -> "Segoe UI Symbol", FontSize -> 12, FontWeight -> "Normal",
|
|
FontSlant -> "Plain", FontTracking -> "Plain",
|
|
FontVariations -> {"StrikeThrough" -> False, "Underline" -> False}],
|
|
Cell[
|
|
CellGroupData[{
|
|
Cell[
|
|
StyleData[All], TextAlignment -> Center, FontFamily ->
|
|
"Segoe UI Symbol", FontSize -> 12, FontWeight -> "Normal", FontSlant ->
|
|
"Plain", FontTracking -> "Plain",
|
|
FontVariations -> {"StrikeThrough" -> False, "Underline" -> False}],
|
|
Cell[
|
|
BoxData[""], "Input", TextAlignment -> Center, FontFamily ->
|
|
"Segoe UI Symbol", FontSize -> 12, FontWeight -> "Normal"]}, Open]]},
|
|
WindowSize -> {786, 884},
|
|
WindowMargins -> {{140, Automatic}, {-107, Automatic}}, FrontEndVersion ->
|
|
"12.2 for Microsoft Windows (64-bit) (December 12, 2020)", StyleDefinitions ->
|
|
"PrivateStylesheetFormatting.nb"],
|
|
ExpressionUUID->"5ef6097c-72c8-4d11-b3dd-efe77ae843c3"
|
|
]
|
|
(* End of Notebook Content *)
|
|
|
|
(* Internal cache information *)
|
|
(*CellTagsOutline
|
|
CellTagsIndex->{}
|
|
*)
|
|
(*CellTagsIndex
|
|
CellTagsIndex->{}
|
|
*)
|
|
(*NotebookFileOutline
|
|
Notebook[{
|
|
Cell[558, 20, 6715, 178, 400, "Input",ExpressionUUID->"296ee68d-611b-4f39-8505-8dc995c0ca11"],
|
|
Cell[7276, 200, 6600, 181, 325, "Input",ExpressionUUID->"0d96d3fd-dac5-4a15-921c-c113c196ee35",
|
|
CellID->161896613],
|
|
Cell[CellGroupData[{
|
|
Cell[13901, 385, 9380, 235, 236, "Input",ExpressionUUID->"e9af63b5-ce7c-4f02-8437-ec7c3b69790f"],
|
|
Cell[23284, 622, 4248, 89, 718, "Output",ExpressionUUID->"d798a34d-f2da-42c6-8aa3-1c805195e5c5"]
|
|
}, Open ]]
|
|
}
|
|
]
|
|
*)
|
|
|