112k views
2 votes
The following differential equation models a non-linear system:


y + (6y - 2)e⁻¹/⁵ + y = 1
y₀ = π/6
y₀ = 0

using MATLAB script, plot the solution y(t) for 10 seconds. Use proper axes labels and title, grid, and legend. Don't use Simulink.

Note: in case you use function, don't forget to attach their script files.


1 Answer

1 vote

Final answer:

If you want to plot the solution y(t) for 10 seconds using MATLAB script, you can use the ode45 function to numerically solve the differential equation.

Here is an example of how you can do it:

function dydt = myODE(t, y)

dydt = -y - (6*y - 2)*exp(-1/5) + 1;

[t, y] = ode45((at)myODE, [0, 10], pi/6);

plot(t, y, 'LineWidth', 1.5);

xlabel('Time (s)');

ylabel('y(t)');

title('Solution of the Non-linear Differential Equation');

grid on;

legend('y(t)');

Step-by-step explanation:

To plot the solution y(t) for the given non-linear differential equation using MATLAB, we will follow these steps:

1. Define the differential equation as a function in a separate MATLAB script file. Let's call this script file "diffeq.m". The function should take the independent variable t and the dependent variable y as inputs, and return the derivative of y with respect to t. The code for the "diffeq.m" script file will be as follows:

```matlab

function dydt = diffeq(t, y)

dydt = 1 - y - (6*y - 2)*exp(-1/5);

end

```

2. Now, we need to write the MATLAB script to solve the differential equation and plot the solution. Let's call this script file "plot_solution.m". The code for the "plot_solution.m" script file will be as follows:

```matlab

  • % Define the initial conditions

y0 = pi/6;

  • % Define the time span for which we want to solve the differential equation

tspan = [0 10];

  • % Solve the differential equation using the ode45 function

[t, y] = ode45((at)diffeq, tspan, y0);

  • % Plot the solution

plot(t, y);

xlabel('Time');

ylabel('y(t)');

title('Solution of the non-linear differential equation');

grid on;

  • % Add legend to the plot

legend('y(t)');

% Save the plot as a figure file (optional)

savefig ('solution_plot.fig');

```

3. Save both the "diffeq.m" and "plot_solution.m" script files in the same directory.

4. Run the "plot_solution.m" script in MATLAB. This will solve the differential equation using the ode45 function and plot the solution of y(t) for 10 seconds. The plot will have proper axes labels, a title, a grid, and a legend.

Please note that in step 2, we have used the ode45 function to solve the differential equation numerically. The ode45 function is a MATLAB built-in function for solving ordinary differential equations. It is a versatile solver that can handle both linear and non-linear differential equations.

User Ashish Pani
by
8.3k points