Why can't I access day, juliandate?

9 views (last 30 days)
K E on 4 Aug 2015
Commented: Walter Roberson on 6 Aug 2015
I have R2015a and can see help for day and juliandate, but I can't access to them from Matlab, and they are not in c:\Program Files\MATLAB\R2015a\, although c:\Program Files\MATLAB\R2015a\help\matlab\ref\juliandate.html is there.
Undefined function or variable 'juliandate'.
Is there a problem with my installation? Or what do I need to obtain these programs?

Answers (4)

Sean de Wolski
Sean de Wolski on 4 Aug 2015
It's in the aerospace toolbox, are you able to pull it?
which juliandate -all
C:\Program Files\MATLAB\R2015a\toolbox\aero\aero\juliandate.m

James Tursa
James Tursa on 4 Aug 2015
Edited: James Tursa on 4 Aug 2015
If it is just this function you need, then you could use this instead:
datenum(whatever) + 1721058.5
For day you could use datevec:
v = datevec(whatever)
d = v(:,3); % day of month

Peter Perkins
Peter Perkins on 5 Aug 2015
KE, day is a function in the Financial Toolbox, and juliandate is a function in the Aerospace Toolbox. The fact that you're asking about both, and have R2015a, makes me wonder if perhaps you're missing those toolboxes, but are looking at documentation for the datetime data type, which has day and juliandate methods. It's new in R2014b.
>> d = datetime('now')
d =
05-Aug-2015 13:58:38
>> day(d)
ans =
>> juliandate(d)
ans =
datetime is more or less a replacement for the combination of the suite of datenum/datevec/datestr functions, and in general, you want to use either datetime, or use the old functions, but not mix them.
  1 Comment
K E on 5 Aug 2015
You are right: I don't have either toolbox. I am wondering why the help for these functions is installed since it just leads to confusion. Anyway, I will use the old datenum functions.

Sign in to comment.

Peter Perkins
Peter Perkins on 6 Aug 2015
KE, just to be clear, if you have MATLAB R2015a, then you have datetime, along with its day and juliandate methods. No extra toolboxes needed.
Walter Roberson
Walter Roberson on 6 Aug 2015
Is that definitely your error, and not
Undefined function 'juliandate' for input arguments of type 'double'.
or similar? juliandate() outside of those toolboxes is defined for datetime objects but not for strings or double

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!