How to Correctly Plot 1/Sqrt(1-(v²/c²)) in Matlab?

  • Context: MATLAB 
  • Thread starter Thread starter mzu
  • Start date Start date
  • Tags Tags
    Matlab Plot
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
5 replies · 4K views
mzu
Messages
9
Reaction score
0
Hey everyone,

I'm trying to create a plot in Matlab but just keep getting errors. It works very well in Mathematica but I want to learn some Matlab. However with all the errors I get I will probably stay with Mathematica. Maybe someone here can help me out.
So, I'd like to create a plot of the formula 1/Sqrt(1-(v²/c²))
It is OK to just replace c by 1 and I'd like to have a plot with v starting at 0.1 and going up to 0.99

In Mathematica I type:
Plot[1/(Sqrt [1 - (v^2/1^2)]), {v, 0.1, 0.99}, PlotRange -> Full]
This gives the expected result.

In Matlab I can assign a fixed value like 0.98 to v and I'm able to calculate the result using:
v=0.98
1/sqrt(1-(v^2/1^2))

However I have no idea how to plot this with v starting at 0.1 and going to 0.99
I tried:
v=0.1:0.01:0.99;
x=1/sqrt(1-(v^2/1^2))
plot(x)

I just keep getting mpower errors. I have absolutely no idea what to do.

Can anybody help me out with this ?

Many thanks in advance.
Michael
 
Physics news on Phys.org
Great, thanks for the help. This actually works and gives the same result as Mathematica. Can anyone tell me why those dot's need to be there ? Is there a rule or so about when to put a dot and where ?

Regards,
Michael
 
The dots indicate an element by element operation. In MATLAB, the operators *, /, ^ etc. default to matrix operations.
 
Thanks for the help. Does that mean that whenever I need *, /, ^, I need to enter a dot if it's not Matrix operations ?