Azzera filtri
Azzera filtri

Solving a non-linear equation

1 visualizzazione (ultimi 30 giorni)
sittmo
sittmo il 25 Nov 2018
Commentato: madhan ravi il 25 Nov 2018
I am relatively new to MATLAB and just had a quick question. I have the following:
D = (C./r).*(1-(C./V).^(X).*k);
v = V + ((tau.*C)./r).*(1-(C./V).^(X).*h);
L = D./v;
where everything besides C are known values that have already been set:
V = 100;
sigma = 0.15;
r = 0.06;
alpha = 0.5;
tau = 0.35;
X = (2.*r)./sigma.^2;
m = (((1-tau).*X./(r.*(1+X))).^X)./(1+X);
h = (1+X+alpha.*(1-tau).*X./tau).*m;
k = (1+X-(1-alpha).*(1-tau).*X).*m;
I wish to solve for C such that D./v = 1, how can I do this?
  3 Commenti
sittmo
sittmo il 25 Nov 2018
Thanks, I edited the question to provide that information.
madhan ravi
madhan ravi il 25 Nov 2018
see my answer below

Accedi per commentare.

Risposta accettata

madhan ravi
madhan ravi il 25 Nov 2018
Modificato: madhan ravi il 25 Nov 2018
syms C
V = 100;
sigma = 0.15;
r = 0.06;
alpha = 0.5;
tau = 0.35;
X = (2.*r)./sigma.^2;
m = (((1-tau).*X./(r.*(1+X))).^X)./(1+X);
h = (1+X+alpha.*(1-tau).*X./tau).*m;
k = (1+X-(1-alpha).*(1-tau).*X).*m;
D = (C./r).*(1-(C./V).^(X).*k);
v = V + ((tau.*C)./r).*(1-(C./V).^(X).*h);
C=vpasolve(D==v,C);
D=subs(D);
v=subs(D);
L=D/v

Più risposte (0)

Categorie

Scopri di più su Function Creation in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by