Can anyone help to write a code for plotting the following equation with time please?

x = exp( (-B/omega) * cos(omega * t) ) ...
./ ( (B/A)*(integral(exp( (-B/omega)* cos(omega * t) ))))
Where
A= 1;
B= 10;
omega= 1;
x0 =0.1;
t = 0 :0.0001:1000;

3 Commenti

The above result is for solving the following system analytically:
dx/dt = (B*sin*(omega*t) * x) - (x^2 * B / A)
As it stands, the integral in your expression is an indefinite integral and therefore has an arbitrary constant of integration. You need to specify what that constant is in order to successfully plot x as a function of t.

Accedi per commentare.

 Risposta accettata

With a little bit of guessing
A= 1;
B= 10;
omega= 1;
x0 =0.1;
t = 0 :0.0001:1000;
fi = @(ti) exp( (-B/omega).*cos(omega*ti) );
fx = @(tj) exp( (-B/omega) .* cos(omega*tj) ) ...
./ ( (B/A).*(integral( fi, 0, tj )));
ezplot( fx, 0:1e-3:12*pi )
produces this
&nbsp
I don't use x0 =0.1; and I get a warning
Warning: Function failed to evaluate on array inputs; [...]

4 Commenti

Many thanks, this is really useful. If I want to find Max(x) and Mean(x), can you help me to find those as well please?
Note that x(0)=Infinity since you get a division by zero there for your quotient.
Best wishes
Torsten.
But I have cos(omega*t) in the denominator so if t =0, I will get 1 .
If lower limit and upper limit of an integral are identical (t=0 in this case), its value is zero - independent of the function to be integrated.
Best wishes
Torsten.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by