Community Profile

photo

Alan Stevens


Last seen: Today Active since 2020

Statistics

  • 24 Month Streak
  • Guiding Light
  • Knowledgeable Level 5
  • First Answer

View badges

Content Feed

View by

Answered
ODE45 returns NaN
t = 0 causes a problem. Try tspan = [0.1 100]; for example.

3 Tage ago | 0

Answered
How can I do an elliptic curve in Matlab?
Here's one simple way: % y^2 - y = x^3 - x % y = (1 +/- sqrt(4x^3 - 4x + 1))/2 n = 1000; x = -2:1/n:2; d = sqrt(4*x.^3-...

3 Tage ago | 0

Answered
Phase Portrait of ODE system
Do you mean something like this: % Part IIa. Base Case % Phase Portrait % % r=2.5; p=2; c=0.1; b=0.1; % % [x,v]=meshgr...

11 Tage ago | 0

Answered
Plot with while loop
By the time you get to the plot command you only have a single value of t1 and a single value of y1 as you overwrite each of the...

19 Tage ago | 0

| accepted

Answered
How should I approach solving differential equation as function of two variables r, k?
You need to call the ode with something like [t, y] = ode45(@(t,y) deq(t,y,r,k),tVec,y0,r,k); where you pass values of r and k...

21 Tage ago | 1

Answered
I need help plotting
More like this perhaps: Z1=500; Z2=50; Z3=500; u=1; tau1=(2*Z2)/(Z1+Z2); tau2=(2*Z1)/(Z1+Z2); tau3=(2*Z3)/(Z3+Z2); p1=(Z...

etwa ein Monat ago | 1

Answered
1D Heat Equation Explicit Scheme
Look at for i=1:(N) if (alpha*DELTA_t)/(DELTA_x^2)<=0.5 T(i,j+1)=T(i,j)+((alpha*DELTA_t)/((DELTA_x)^2))*(...

etwa ein Monat ago | 1

| accepted

Answered
Solving a system of Second Order Equations
Not sure there is a symbolic solution, but it's easy enough to get a numerical one: tspan = [0 1]; % Start and end times % In...

etwa ein Monat ago | 1

Answered
How to solve 4th order Runge-Kutta for different initial conditions?
Here's a rather crude method (together with some corrections). You should be able to turn this into a much more elegant version...

etwa ein Monat ago | 1

| accepted

Answered
1D Heat Equation Explicit Scheme (fixed)
With for i=0:0.1:50 you are trying to index variables with zero. However, Matlab's indexing starts at 1.

etwa ein Monat ago | 1

Answered
How to plot Homogeneous solution and Particular integral seperately of a second order differntial equation using ode45
ode45 just solves first order equations, so turn your second order equation into two first order ones, like so: y' = v v' = -4...

etwa ein Monat ago | 0

Answered
Trying to plot R_K 4th order, but keep getting straight line?
Check these equations F_sir = @(s,i,r) -a*s*i; % change the function as you desire G_sir = @(...

etwa ein Monat ago | 1

| accepted

Answered
Not enough input arguments; fzero function
Replace T_mix = fzero(fun,T_mix_0); by T_mix = fzero(@fun,T_mix_0);

etwa ein Monat ago | 1

Answered
I am trying to use the trapezoidal rule to compute the flow rate of fluid through a pipe.
I think it needs to be more like this: % Velocity distribution function of the pipe % Area = pi*r^2 % dA = 2*pi*r dr % Q = V...

etwa ein Monat ago | 0

| accepted

Answered
How to get area under the fit attained by Curve Fitting tool?
Try help trapz

etwa ein Monat ago | 0

Answered
Progressively slower performance and task constraints using matrix and loops
With these particular functions it's easy to precalculate the Jacobian function and do everything numerically (and quickly). Fo...

etwa ein Monat ago | 0

Answered
Local Stiffness Matrix Negative
How about replacing if i==2 & j==2 k=A(e)*E/(L/5); elseif i==2 & j==1 k=...

etwa 2 Monate ago | 0

Answered
Save array values in a for loop
Try replacing error = max(abs(double(y1-z1(vx)))) with error(i) = max(abs(double(y1-z1(vx))));

etwa 2 Monate ago | 0

| accepted

Answered
Solving a PDE with two variables using cank nicolson method
Matlab indices start at 1, so the loops i, j and K in the following for i=0:N for j=0:M for K=0:1 f(x,y...

etwa 2 Monate ago | 0

Answered
Solving a System of 2nd Order Nonlinear ODEs
You haven't passed y and z to the funcion in function dydt=mbd(M,m,g,lc,k) Probably needs to be more like function dydt=mbd(t...

etwa 2 Monate ago | 0

Answered
Can I comment only a section or part of a line?
Like this: x = linspace(0,2*pi,100); y1 = sin(x); y2 = cos(x); plot(x,y1,... % comment x,y2)

etwa 2 Monate ago | 0

Answered
Adding subtitle to the plot
In Matlab 2018 try title({'Main title text';'subtitle text'}) (Note the curly brackets)

2 Monate ago | 0

| accepted

Answered
Left-rotating a vector
You define B as a null vector so it doesn't have an "end". Try, simply A = [1,2,3,4,5]; B = [A(2:end) A(1)]

2 Monate ago | 0

| accepted

Answered
How can I solve this error : Invalid text character. Check for unsupported symbol, invisible character, or pasting of non-ASCII characters.
This works for me: n=input('donner le nombre de points: '); k=0; for i=1:n u1=rand;u2=rand; x=2*u1; y=2*u2...

2 Monate ago | 0

Answered
Lax-Wendroff method for advection equation with periodic boundary condition
If you make dt=0.1*h/a; instead of dt=0.95*h/a; your max error reduces to 0.0355.

2 Monate ago | 0

Answered
I want to solve the unknown variable t1
Well, this gets it working, though who knows if it makes any sense!" A0 =500; D0=100; c1=5; c2=10; c3=10; c4=8; a=30; a2...

3 Monate ago | 0

Answered
How to make convergence plot (error VS time step) in a log-log scale among four numerical methods and exact solution?
This should give you the right idea: %% 1st-order Adams-Bashforh Solution fun = @(t,y) (y); %Function f(t,y) y0 = 1; %Initial...

3 Monate ago | 0

Answered
i need some help with finding the damping ratio
Use fzero: x = [12.73, 25.36, 37.99]; y = [0.77, 0.29, 0.11]/2; zeta = fzero(@(zeta) fn(zeta,y),0.5); disp(['zeta = ' nu...

3 Monate ago | 0

Answered
How to make graph that plot between Analytical Solution (Exact Solution) and Numerical Method Solution?
After Y = exactY(t2) you probably need something like: plot(t2,Y2,t2,Y) legend('AM','Exact') However, you haven't supplied th...

3 Monate ago | 0

| accepted

Answered
How to numerically solve and plot definite integral with variable upper limit
Like so: K= @(t) (sin(t)-t.*cos(t)).*sin(t); P = 0:0.1:3.1416; for i = 1:numel(P) V(i) = integral(K,0,P(i)); ...

3 Monate ago | 0

| accepted

Load more