plot line with function but doesn't appear like i want

2 views (last 30 days)
I have a figure below and i want to reproduce it using matlab figure
.
The diagonal line come from equation x/(sqrt(x^2+a^2)*v1)
Here the code that I write, but it give me straight line, not diagonal one. Could you tell me please which part that i made mistake?
close all, clear,clc
a=linspace(5,0);
x=linspace(0,3.758);
b=linspace(3.758,10-3.758);
c=linspace(0,-3);
v1=4;
v2=6;
left_eq=x./(sqrt(x.^2+a.^2)*v1);
right_eq=(b-x)./(sqrt(c.^2+(b-x).^2)*v2);
plot(x,left_eq,'-b',b,right_eq,'-r')
  1 Comment
Walter Roberson
Walter Roberson on 15 May 2023
Your a and x both increase linearly with time, just with different rates. When you run the calculation symbolically you can show that the ratio you are constructing is constant.
a=linspace(0,5);
x=linspace(0,3.758);
denom = sqrt(x.^2 + a.^2);
plot(x, denom)
syms t positive
A = 0 + (5-0)*t
A = 
X = 0 + (3.758-0)*t
X = 
denom = sqrt(A^2 + X.^2)
denom = 
left_eq = X ./ denom
left_eq = 

Sign in to comment.

Accepted Answer

Matt J
Matt J on 15 May 2023
Edited: Matt J on 15 May 2023
plot([0,3.758,10] , [5,0,-3],'-o','MarkerFaceColor','b'); hold on
plot([0,0],[0,5],':b');
plot([10,10],[0,-3],':b');hold off
yline(0); axis equal; xlim([-3,13])

More Answers (0)

Categories

Find more on Numeric Types in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!