MatLab datenum truncated in matrix

2 次查看(过去 30 天)
I am writing a code for a research project in space physics and at the very end I output a matrix with time, and the magnetic field strength.
The final function is
function [time, data_out]=time_Bpar_Bperp(fname)
% Function recieves a file name and out puts time, a vector in the
% direction parallel to the magentic field and a vector perpindicular to
% the magnetic field
[time, Bparallel] = loadthemismag(fname);
eparallel = make_eparallel(fname);
eperp = make_eperp(time, eparallel(:,2:4), fname);
Bperp = make_Bperp(eparallel(:,2:4), eperp, Bparallel(:,2:4));
cd('I:/olddrive')
Bparallel=findmagnitude(Bparallel(:,1:3));
Bperp=findmagnitude(Bperp);
data_out=[time, Bparallel, Bperp];
The data in time is about every 3 seconds but the data located in data_out(:,1) is not the same as time. When I plot time vs data_out(:,1), the resulting plot looks like stairs. Any ideas on why the time is being messed up in the matrix, and nothing is happening to it outside of it. If it matters the matrix is 28526 by 3.
Thanks,
Rhysics

采纳的回答

Walter Roberson
Walter Roberson 2012-6-14
Please confirm that time, Bparallel, and Bperp are all column vectors, and the class() of all of them is 'double'. If one of them happened to be an integer data type then putting them together in a matrix could result in them all being converted to integer.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dates and Time 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by