Let us take the curve in the article cited by Allan MacLeod in another answer (the curve that appears in the Buhler-Gross-Zagier paper), and calculate all the invariants that participate in the B-SD conjecture, using Sage (I am actually using Sage online, version 5.2, to do this... which can be slow at times, but it usually works fine):
The curve in question is given by $E : y^2 = 4x^3-28x+25$. This is not a "standard" form anymore, so we first transform it to $E : Y^2 = X^3 - 28X/4 + 25/4$ first (where $X=x$ and $y=2Y$). We define the curve using Sage by
E = EllipticCurve([0,0,0,-28/4,25/4])
If you do not like this curve, because of those rational coefficients, you can clear denominators with a further transformation, or find a minimal model using Sage:
E.minimal_model()
Elliptic Curve defined by y^2 + y = x^3 - 7*x + 6 over Rational Field
We will work with the model $E: y^2 + y = x^3 - 7x + 6$ instead, for that, we type
E=E.minimal_model()
Buhler-Gross-Zagier mention that this curve has conductor $5077$...
E.conductor()
5077
which verifies this fact. Ok, that's great, we have the right curve. Let's begin by calculating the rank, generators, and their regulator:
E.rank()
3
E.gens()
[(-2 : 3 : 1), (-1 : 3 : 1), (0 : 2 : 1)]
R = E.regulator()
R
0.417143558758384
The number of torsion points on $E$ also figures into the B-SD formula, so let's calculate the torsion subgroup:
E.torsion_subgroup()
Torsion Subgroup isomorphic to Trivial group associated to the Elliptic Curve defined by y^2 + y = x^3 - 7*x + 6 over Rational Field
Now we calculate $\Omega$, twice the real period of $E$ (we need twice the real period because $E(\mathbb{R})$ is not connected):
2*E.period_lattice().real_period()
4.15168798308693
We need two further refined invariants. The Tamagawa numbers $c_p$ are calculated first:
E.tamagawa_numbers()
1
Note that we could have also used "E.tamagawa_product()" instead. And then it remains to calculate Sha... I can't. See this Sage page for commands to try and calculate Sha, but these fail when the rank is $>2$. The best we can do (as in the Buhler-Gross-Zagier paper) is to prove that the 2-part is trivial:
S = E.sha()
S.two_selmer_bound()
0
which means that indeed the two part is trivial. Using
E.heegner_sha_an(-7)
1.00000000000000
we have further evidence that Sha is trivial.
It is high time to calculate the Hasse-Weil $L$-function of $E/\mathbb{Q}$ and see if everything agrees as it is supposed to.
L = E.lseries().dokchitser()
This returns the Hasse-Weil L-function of E, calculated using a method of Tim Dokchitser. Let's calculate $L(E,1)$.
L(1)
0.000000000000000
Now the first derivative:
L.derivative(1,1)
-5.63436295355417e-22
Now the second derivative...
L.derivative(1,2)
2.08600476044446e-21
And the third...
L.derivative(1,3)
10.3910994007158
That's the first "non-zero" value (the other values where very, very close to zero... but we did not prove they were zero!). Now, B-SD says that:
$\frac{L^{(3)}(E,1)}{3!} = \frac{ |\text{Sha}| \cdot \Omega \cdot R \cdot \text{Tam} }{ |\text{torsion}|^2}$
The left hand side of the B-SD formula is (numerically):
L.derivative(1,3)/6
1.73184990011930
while the right hand side, assuming that Sha is trivial is:
(1 * 4.15168798308693 * 0.417143558758384 * 1) / 1^2
1.73184990011930
so both sides of the equation match! (up to the given precision...).