Borrar filtros
Borrar filtros

Plot two equations and find the intersect

2 visualizaciones (últimos 30 días)
Brian Robinson
Brian Robinson el 4 de Abr. de 2020
Comentada: John D'Errico el 4 de Abr. de 2020
I want to solve numerically for the intersects, plot the curve and line and show the intersects on the plot . E is the x axis and y is the y axis. We have;
g=9.81;v=1;y1=2;q=v*y1;z=0.9;
Syms E y2
eqn1 = E==2*g*y2^3+y2^2(2*g*z-2*g*y-q^2/y1^2)+q^2 = 0;
eqn2 = E==3;
That is as far as I got.
Thanks in advance.
  2 comentarios
KSSV
KSSV el 4 de Abr. de 2020
What is y?
Brian Robinson
Brian Robinson el 4 de Abr. de 2020
Sorry that y should read y1.

Iniciar sesión para comentar.

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 4 de Abr. de 2020
Try this
g=9.81;v=1;y1=2;q=v*y1;z=0.9;
syms E y2
E1 = 2*g*y2^3+y2^2*(2*g*z-2*g*y1-q^2/y1^2)+q^2;
E2 = 3;
sol = double(solve(E1==E2));
fplot(E1, [-0.5 1.5]) % plot from -5 to 5 on x-axis
hold on;
fplot(E2, [-0.5 1.5])
plot(sol, E2*ones(size(sol)), 'ro');
  8 comentarios
Ameer Hamza
Ameer Hamza el 4 de Abr. de 2020
Brian, the function handle E1, has two inputs. fimplicit plot 1st on x and 2nd on y-axis.
John D'Errico
John D'Errico el 4 de Abr. de 2020
Exactly. Had I created the function handle as:
E1 = @(y2,E) 2*g*y2.^3+y2.^2.*(2*g*z-2*g*y1-q^2/y1.^2)+q^2 - E;
then E would be on the y axis.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by