saving a matrix
1 view (last 30 days)
Show older comments
Hi,
I am trying to compare my two codes , which should give same results. Both code have the same variable names such as vx vz. I am trying to calculate velecotiy profiles. For that I open to Matlabs and run both codes . Than I write
vz1=vz; save ( ' FT','vza')
and I load FT in the other matlab window, but it directly takes vz values in the the program. And I get 0 as difference, where I should be getting something around 1e-15 ( I know that because I copy paste the results from one to other).
Is there a way to solve my problem witouth changing the variable names?
2 Comments
Accepted Answer
Matt Fig
on 14 Feb 2011
When you load, use the functional form of LOAD in order to avoid overwriting your variables.
X = load('FT');
% Then use X.vz, etc.
.
.
.
.
.
EDIT
As I state below in the comment, copy paste is not reliable with floating points. I want to say it again here so the formatting is better.
format long
pi % copy this and paste below
pi- 3.14159265358979
ans =
3.10862446895044e-015
2 Comments
Matt Fig
on 15 Feb 2011
If you did what I showed above and got zero difference, I have to question the method you used to find a real difference. Copy and paste with floating point numbers is often unreliable. Try this:
format long
pi % Now copy this using ctrl+c
pi- 3.14159265358979
ans =
3.10862446895044e-015
More Answers (2)
Robert Cumming
on 15 Feb 2011
The error could be coming from the copy/paste between the two matlabs.
Are you 100% sure that you have different values?
When I do the same as your doing I get a max of 0 (as you do), and if I copy the data from the editor from 1 matlab to another I get an difference of ~1e-15.
But I know my numbers are exactly the same, so the difference is definately coming from the copy and paste step.
0 Comments
See Also
Categories
Find more on Whos in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!