As the other Answer already touches on the possibility of a symbolic root-solver being applied to this particular equation (by transforming into a polynomial form, albeit of degree $\ge 5$), I'll make some remarks about numerical root-finding.
When we want to find real roots of a continuous function, the Intermediate Value Theorem is a basic tool. On a closed bounded interval where the real function is continuous and changes sign between endpoints, there will be a real root somewhere in the interior of that interval. The Bisection Method allows us to approximate at least one such root in that interval.
Here we can transform the equation into finding roots of a real continuous function by cross-multiplying and collecting terms on one side:
$$ \frac{0.125567841}{d^{2.25}} = \frac{2.513274d+0.10053+2.11\pi}{d+0.04} $$
$$ 0.125567841(d+0.04) = (2.513274d+0.10053+2.11\pi)d^{2.25} $$
$$ F(d) \equiv 2.513274d^{3.25} + (0.10053+2.11\pi)d^{2.25} - 0.125567841d - 0.00502271364 = 0 $$
This form of the problem is easier to analyze, but we should check whether the cross-multiplication introduced artifact roots, i.e. roots for the revised equation that do not satisfy the original equation. When we multiply both sides by the denominators $d^{2.25}$ and $d+0.04$, it is possible that this introduces one or more new roots where such factors are zero, i.e. where $d=0$ or $d=-0.04$. Fortunately $F(0)\neq 0$ and $F(-0.04)\neq 0$, so we have not introduced artifact roots in this case.
One should be careful to define what (if anything) $d^{2.25}$ means for negative real values of $d$. Inevitably one must abandon any real value for this expression because it requires taking square roots of a negative number. This is a particular weakness of relying on tools such as Wolfram Alpha, because it attempts to be helpful by aggressively assuming that some sense is to be made of the expression even for negative arguments $d$.
Fortunately in this case what roots Wolfram Alpha finds are not on the negative half of the real axis for $d$. There is a positive real root $d\approx 0.06087$, and the other roots found are in complex conjugate pairs.
The real root can be found by standard methods such as bisection once we realize that $F(d)$ is continuous and changes sign on the interval $[0,1]$. That is, $F(0)=-0.00502271364$ and $F(1)\approx 9.11197$, so there must be an intermediate value of $d_0$ where the function $F(d_0)=0$. Once the location of the root $d_0$ is suitably narrowed by bisection, etc., more rapidly converging methods (like Newton's method) can be used.
When a function like $F(d)$ with real coefficients on rational powers has complex roots, these will occur naturally in complex conjugate pairs. One can then replace the one dimensional search for a real root with a two dimensional search for a complex conjugate root pair $d = x \pm iy$. A classic approach to this is Bairstow's Method, which uses Newton-Raphson iterations to locate a complex conjugate root pair using only real arithmetic.
Just as Python users interested in symbolic root-finding should be familiar with sympy
, those interested in numerical root-finding will be attracted to the numpy
library. In many problems a synthesis of the two approaches is advantageous, e.g. using sympy
to get derivatives of a function which can be evaluated by routines in numpy
.