J'essaie de trouver la racine d'une contrainte d'équation en utilisant la méthode de Newton (ouverte à toute autre méthode). La contrainte d'équation dépend des racines d'une équation quadratique qui a un terme inconnu. Les descriptions d'équations (quadratique et contrainte) sont présentées ci-dessous. Les racines de l'équation quadratique sont supposées être p1
et p2
.Méthode de Newton
x^2 + x*(c1*unknown/2 + C1*c2)/(c1*c2*c3*unknown/2) + 1/(c1*c2*c3*u/2) = 0
avec la contrainte
(1/(p2-p1))*(exp(-0.3*p2) - 1)*(c1*c2 - p2) - (exp(-0.3*p1) - 1)*(c1*c2 - p1) - 0.04 = 0
Je me demande s'il y a d'autres méthodes d'approximation pour résoudre ce problème si la méthode de Newton ne va pas le faire.
Matlab code
p0=10*10^6;
Cc=0.65*10^-6;Rp=100*10^3;Cp=55*10^-9; z1=1/(Cp*Rp);
N = 100;error = 0.02;
syms 'x'
a = 1;
b = ((Cc*(x/2+Rp))/(Cc*Cp*Rp*x/2));
c = 1/(Cc*Cp*Rp*x/2);
poles1 = (-b + sqrt(b^2 - 4*a*c))/(2*a);
poles2 = (-b - sqrt(b^2 - 4*a*c))/(2*a);
p1_subterm = (exp(-0.3*poles1) - 1)*(z1 - poles1);
p2_subterm = (exp(-0.3*poles2) - 1)*(z1- poles2);
f(x) = (1/(poles2 - poles1))*p2_subterm - p2_subterm - 0.04;
df = diff(f);
while i <= N
p = p0-(f(p0)/df(p0))
if (abs(p - p0)/abs(p)) < error
fprintf('Solution is %f \n', double(p))
return
end
i = i + 1;
p0 = p;
end
fprintf('Solution did not converge within %d iterations \n', N)
Je ne comprends pas la contrainte. Ne manque-t-il pas un opérateur relationnel (comme '=, <=, > = '; btw, la première ligne n'est pas une équation non plus parce qu'il manque' = ')? La contrainte est-elle plutôt une fonction et vous voulez trouver la racine de la fonction? Si oui, quel est l'argument de la fonction? Je ne vois que des constantes. Si je vous comprends bien, p1 et p2 sont aussi constants car ils sont définis comme racines de la première fonction. Quelle est la différence entre * x * et * unknown * dans la première ligne? –
L'équation est mise à jour. Vous pouvez cliquer sur le lien EquationImage. Les deux équations correspondent à zéro. p1 et p2 sont les racines de l'équation quadratique. Supposons que dans une équation quadratique ax^2 + bx + c, disons que b est inconnu. La même chose est avec mon cas où je dis inconnu dans la première ligne. C'est pourquoi p1 et p2 sont exprimés avec unknown dans ma contrainte. Je veux trouver l'inconnu à travers ma contrainte. –
Votre équation n'est pas claire. x et inconnues; toutes ces constantes peuvent être combinées. C'est un mauvais visuel. Qu'attendez-vous de sortir de cette équation? Valeurs pour x et l'inconnu où les racines sont nulles et la contrainte est satisfaite? La méthode de Newton pour les racines d'une seule équation est une chose; Les solutions itératives de Newton-Raphson des ensembles d'équations en sont une autre. Qu'essayez-vous de faire? – duffymo