Azzera filtri
Azzera filtri

Unable to meet integration tolerances without reducing the step size problem.

18 visualizzazioni (ultimi 30 giorni)
Hello Everyone.
I am facing 'Warning: Failure at t=0.000000e+00. Unable to meet integration tolerances without reducing the step size below the smallest value allowed (7.905050e-323) at time t, error for the following code. How can I fix it.
clc
clear all
A =1.4036e-18;
B = 3.4302e-18;
e=1.60217663e-19;
T_e=3;
f = @(t,x) [(sqrt(A/x(1)))*(-x(4)-(0.424)+(1.6977)*exp(-(e/T_e)*(x(1))));
(sqrt(A/x(1)))*(x(4)-(0.663)+(2.6540)*exp(-(e/T_e)*(x(2))));
-(2.994*10^5)*x(4);
((x(1))-(x(2))+x(3)+60*(cos(t)))-2.55*10^7*x(4)];
[t,xa] = ode15s(f,[0, 80],[0,0,-62,0]);
figure(1)
plot(t,xa(:,1),'Color','blue'),grid on;
title('xa1')
xlabel('t'), ylabel('Qsp (Powered Electrode Sheath Voltage)')

Risposte (1)

Torsten
Torsten il 7 Feb 2023
You define an initial condition for x(1) as 0, but you divide by x(1) in equations 1 and 2.
This won't work.
  3 Commenti
Md. Golam Zakaria
Md. Golam Zakaria il 7 Feb 2023
@Steven Lord, If I chose nonzero initial conditions will it solve my problem. I didnt do it because It takes too much time to solve
Torsten
Torsten il 7 Feb 2023
If I chose nonzero initial conditions will it solve my problem.
Nobody knows. Just try it.

Accedi per commentare.

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by