Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mockingbirdnest/Principia
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2a9998363e86
Choose a base ref
...
head repository: mockingbirdnest/Principia
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1e1dc61c48ff
Choose a head ref
  • 7 commits
  • 4 files changed
  • 1 contributor

Commits on Jun 21, 2019

  1. Maclaurin series.

    pleroy committed Jun 21, 2019
    Copy the full SHA
    413eae6 View commit details

Commits on Jun 22, 2019

  1. Clarification.

    pleroy committed Jun 22, 2019

    Unverified

    This commit is not signed, but one or more authors requires that any commit attributed to them is signed.
    Copy the full SHA
    de3c48b View commit details
  2. Taylor, not Maclaurin.

    pleroy committed Jun 22, 2019
    Copy the full SHA
    3b497fb View commit details
  3. Copy the full SHA
    93440a0 View commit details
  4. Finalize.

    pleroy committed Jun 22, 2019
    Copy the full SHA
    68762f1 View commit details
  5. Merge.

    pleroy committed Jun 22, 2019
    Copy the full SHA
    ab3f6df View commit details
  6. Merge pull request #2216 from pleroy/ElBD

    Rewrite FukushimaEllipticBD
    pleroy authored Jun 22, 2019
    Copy the full SHA
    1e1dc61 View commit details
Showing with 610 additions and 411 deletions.
  1. +124 −0 mathematica/fukushima_elliptic_bd.wl
  2. +2 −0 mathematica/mathematica.vcxproj
  3. +6 −0 mathematica/mathematica.vcxproj.filters
  4. +478 −411 numerics/elliptic_integrals.cpp
124 changes: 124 additions & 0 deletions mathematica/fukushima_elliptic_bd.wl
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
(* ::Package:: *)

(* ::Section:: *)
(*Fukushima "Precise and fast computation of the general complete elliptic integral of the second kind", section 2.2*)


(* ::Input:: *)
(*fukushimaB[\[CurlyPhi]_,m_]:=(EllipticE[\[CurlyPhi],m]-m EllipticF[\[CurlyPhi],m])/m*)


(* ::Input:: *)
(*fukushimaD[\[CurlyPhi]_,m_]:=(EllipticF[\[CurlyPhi],m]-EllipticE[\[CurlyPhi],m])/m*)


(* ::Input:: *)
(*fukushimaB[m_]:=fukushimaB[\[Pi]/2,m]*)


(* ::Input:: *)
(*fukushimaD[m_]:=fukushimaD[\[Pi]/2,m]*)


(* ::Input:: *)
(*fukushimaBstar[m_]:=m fukushimaB[m]*)


(* ::Input:: *)
(*fukushimaDstar[m_]:=m fukushimaD[m]*)


(* ::Input:: *)
(*fukushimaK0[mc_]:=(EllipticK[mc]/\[Pi])(-Log[16 EllipticNomeQ[mc]/mc])*)


(* ::Input:: *)
(*fukushimaKX[mc_]:=EllipticK[mc]/\[Pi]*)


(* ::Input:: *)
(*fukushimaX[mc_]:=-Log[mc/16]*)


(* ::Input:: *)
(*fukushimaE0[mc_]:=(\[Pi]/(2 EllipticK[mc]))+(1-(EllipticE[mc]/EllipticK[mc]))fukushimaK0[mc]*)


(* ::Input:: *)
(*fukushimaEX[mc_]:=(1-(EllipticE[mc]/EllipticK[mc]))fukushimaKX[mc]*)


(* ::Input:: *)
(*fukushimaBstar0[mc_]:=fukushimaE0[mc]-mc fukushimaK0[mc]*)


(* ::Input:: *)
(*fukushimaBstarX[mc_]:=fukushimaEX[mc]-mc fukushimaKX[mc]*)


(* ::Input:: *)
(*fukushimaDstar0[mc_]:=fukushimaK0[mc]-fukushimaE0[mc]*)


(* ::Input:: *)
(*fukushimaDstarX[mc_]:=fukushimaKX[mc]-fukushimaEX[mc]*)


(* ::Input:: *)
(*Series[fukushimaDstar0[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[fukushimaBstar0[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[fukushimaBstarX[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[fukushimaK0[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[fukushimaKX[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[fukushimaEX[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[EllipticNomeQ[mc],{mc,0,5}]*)


(* ::Input:: *)
(*Series[(EllipticK[mc]-1)/(\[Pi]/2),{mc,0,5}]*)


(* ::Input:: *)
(*Series[(EllipticK[mc]-EllipticE[mc])/(\[Pi]/2),{mc,0,5}]*)


(* ::Input:: *)
(*fukushimaEX[mc]//Simplify*)


(* ::Input:: *)
(*fukushimaKX[mc] // Simplify*)


(* ::Input:: *)
(*fukushimaBstarX[mc]//Simplify*)


(* ::Input:: *)
(*CoefficientList[Series[fukushimaKX[mc],{mc,0,7}],mc]*)


(* ::Input:: *)
(*CoefficientList[Series[fukushimaEX[mc],{mc,0,8}],mc]*)


(* ::Input:: *)
(*CoefficientList[Series[fukushimaBstarX[mc],{mc,0,8}],mc]*)
2 changes: 2 additions & 0 deletions mathematica/mathematica.vcxproj
Original file line number Diff line number Diff line change
@@ -24,6 +24,8 @@
</ItemGroup>
<ItemGroup>
<None Include="associated_legendre_function.wl" />
<None Include="elliptic_integrals.wl" />
<None Include="fukushima_elliptic_bd.wl" />
<None Include="generate_graphs.wl" />
<None Include="navball.wl" />
<None Include="integration.wl" />
6 changes: 6 additions & 0 deletions mathematica/mathematica.vcxproj.filters
Original file line number Diff line number Diff line change
@@ -78,5 +78,11 @@
<None Include="associated_legendre_function.wl">
<Filter>Scripts</Filter>
</None>
<None Include="elliptic_integrals.wl">
<Filter>Scripts</Filter>
</None>
<None Include="fukushima_elliptic_bd.wl">
<Filter>Scripts</Filter>
</None>
</ItemGroup>
</Project>
Loading