En supposant que je les quatre équations suivantes:résolvant un système d'équations transcendantes avec python
- cos (x)/x = a
- cos (y)/y = b
- a + b = 1
- c sinc (x) = sinc d (y)
pour les variables inconnues x, y, a
et b
. Notez que cos(x)/x=a
a plusieurs solutions. Semblable va pour la variable y
. Je ne m'intéresse qu'aux valeurs x
et y
, qui sont les premières racines positives (si cela compte).
Vous pouvez supposer que a, b, c
et d
sont des constantes réelles connues, toutes positives.
En Mathematica le code pour résoudre ce ressemblerait à quelque chose comme:
FindRoot[{Cos[x]/x == 0.2 a + 0.1,
Cos[y]/y == 0.2 b + 0.1,
a + b == 1.0,
1.03*Sinc[x] == Sinc[y]*1.02},
{{x, .1}, {y, .1}, {a, .3}, {b, .1}}]
qui à la suite retourne
{x -> 1.31636, y -> 1.29664, a -> 0.456034, b -> 0.543966}
Bien que ce fut assez facile, je ne sais rien faire comme ça en python. Donc, si quelqu'un pouvait me guider (ou simplement me montrer comment) pour résoudre cela, je l'apprécierais grandement.
double possible de [Résolution système d'équations non linéaires avec python] (http://stackoverflow.com/questions/ 22156709/resolution-system-of-nonlinear-equations-with-python) – Prune