I wanna solve to solve
10 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
my solve equation like this....
[R2,x]=solve('((1-R2)/(1-R1)*-(b/c*R2))*x^2+(1-R2)/(1-R1)-b/c=0','((2-R1-R2)/(1-R1))*a*x^2+(b+c)*(1-R2)*x+a*(((1-R2)/(1-R1)+R1)+R2)=0','R2,x');
it is very complex i think.
so replace number(by input) from coefficient(R1,a,b,c) before!! executing solve equation.(Don't say that first solve second subs)
To my purpose, chane my code
a=input('a:');
b=input('b:');
c=input('c:');
R1=input('R1');
fn1=((1-R2)/(1-R1)*R1-(b/c*R2))*x^2+(1-R2)/(1-R1)-b/c;
fn2=((2-R1-R2)/(1-R1))*a*x^2+(b+c)*(1-R2)*x+a*(((1-R2)/(1-R1)+R1)+R2);
[R2,x]=solve('fn1=0','fn2=0','R2,x')
but it doesn't work!! help me!!!
0 Commenti
Risposte (2)
Ayush
il 6 Nov 2024 alle 5:07
Hi @Yunho Choi
To solve your equations with numerical coefficients in MATLAB, you need to substitute the values into the equations before using the solve function.
This is how you can do it:
% substitute the values
a = input('a: ');
b = input('b: ');
c = input('c: ');
R1 = input('R1: ');
% Define symbolic variables
syms R2 x;
% Define the equations with substituted numerical values
fn1 = ((1-R2)/(1-R1)*R1 - (b/c)*R2)*x^2 + (1-R2)/(1-R1) - b/c;
fn2 = ((2-R1-R2)/(1-R1))*a*x^2 + (b+c)*(1-R2)*x + a*(((1-R2)/(1-R1) + R1) + R2);
% Solve
solutions = solve(fn1 == 0, fn2 == 0, R2, x);
0 Commenti
Walter Roberson
il 6 Nov 2024 alle 6:20
The fundamental problem here is that when you use the old form of solve that used quoted expressions, that variables defined in previous expressions do not have their values substituted when evaluating quoted expressions.
To use quoted expressions, you would have had to use
eqn1 = subs('fn1=0');
eqn2 = subs('fn2=0');
[R2,x] = solve(eqn1, eqn2,'R2', 'x')
0 Commenti
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!