DateTime::Calendar::Mayan man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

DateTime::Calendar::MaUser3Contributed Perl DocumeDateTime::Calendar::Mayan(3)

NAME
       DateTime::Calendar::Mayan - The Mayan Long Count, Haab, and Tzolkin
       calendars

SYNOPSIS
	  use DateTime::Calendar::Mayan

	  my $dtcm = DateTime::Calendar::Mayan->new(
	       baktun  => 12,
	       katun   => 19,
	       tun     => 10,
	       uinal   => 2,
	       kin     => 8,
	       # alternate epoch
	       epoch   => DateTime->new(
		       year    => -3113,
		       month   => 8,
		       day     => 13,
		   ),
	   );

	  print $dtcm->date;
	  # prints 12.19.10.2.8
	  print $dtcm->haab;
	  # prints 3 Uayeb
	  print $dtcm->tzolkin;
	  # prints 3 Oc

DESCRIPTION
       An implementation of the Mayan Long Count, Haab, and Tzolkin calendars
       as defined in "Calendrical Calculations The Millennium Edition".
       Supplemented by "Frequently Asked Questions about Calendars".

METHODS
       ·   new( baktun => $scalar, ..., epoch => $object )

	   Accepts a hash representing a date on the Long Count calendar and a
	   "DateTime::Calendar" object specifying an alternate epoch.  All
	   keys are optional.

	      The units are:
	      kin   = 1 day
	      uinal = 20 days
	      tun   = 360 days
	      katun = 7200 days
	      baktun = 144000 days

	   In the future pictuns, calabtuns, kinchiltuns, and alautuns may be
	   accepted.

       ·   now

	   Alternate constructor.  Uses DateTime->now to set the current date.

       ·   today

	   Alternate constructor.  Uses DateTime->today to set the current
	   date.

       ·   clone

	   This object method returns a replica of the given object.

       ·   from_object( object => $object )

	   Accepts a "DateTime::Calendar" object.  Although this calendar
	   doesn't support time it will preserve the time value of objects
	   passed to it.  This prevents a loss of precision when chaining
	   calendars.

	   Note: Language support is not implemented.

       ·   utc_rd_values

	   Returns the current UTC Rata Die days, UTC Rata Die seconds, and
	   nanoseconds as a three element list.

       ·   from_epoch( epoch => $scalar )

	   Creates a new object from a number of seconds relative to midnight
	   1970-01-01.

       ·   epoch

	   Returns the number of seconds since midnight 1970-01-01.

       ·   set_mayan_epoch( object => $object )

	   Accepts a "DateTime::Calendar" object.  The epoch is set to this
	   value on a per object basis

	   The default epoch is:

	   Goodman-Martinez-Thompson
	      Aug. 11, -3113 / Sep. 6, 3114 B.C.E. / 584,283 JD

       ·   mayan_epoch

	   Returns a "DateTime::Calendar::Mayan" object set to the current
	   Mayan epoch.

       ·   date

       ·   bktuk

       ·   long_count( $scalar )

	   Returns the Long Count calendar date.  Think DateTime::ymd.	Like
	   ymd this method also accepts an optional field separator string.

       ·   haab( $scalar )

	   Returns the Haab calendar date.  Accepts an optional field
	   separator string.

       ·   tzolkin( $scalar )

	   Returns the Tzolkin calendar date.  Accepts an optional field
	   separator string.

       ·   baktun

       ·   katun

       ·   tun

       ·   uinal

       ·   kin( $scalar )

	   Gets/Sets the long count value of the function name.

       ·   set_baktun

       ·   set_katun

       ·   set_tun

       ·   set_uinal

       ·   set_kin( $scalar )

	   Aliases to the combined accessor/mutators.

       ·   set( baktun => $scalar, ... )

	   Accepts a hash specifying new long count values.  All units are
	   optional.

       ·   add

       ·   subtract( baktun => $scalar, ... )

	   Accepts a hash specifying values to add or subject from the long
	   count.  All units are optional.

       ·   add_duration

       ·   subtract_duration( $object )

	   Accepts a "DateTime::Duration" object and either adds or subtracts
	   it from the current date.   See the DateTime::Duration docs for
	   more details.

BACKGROUND
       Please see:

       Chapter 10 of Calendarical Calculations "The Millennium Edition".

       and

       Chapter 7 of Frequently Asked Questions about Calendars.
	  http://www.tondering.dk/claus/cal/node8.html

GOTCHAS
       The Long Count calendar is cyclical and it is possible to have
       different dates in other calendars that convert to be the same Long
       Count date.  Under this calendar the dates 0.0.0.0.0 and 13.0.0.0.0 are
       equivalent.

       The Long Count calendar will next roll over in late 2012 (Gregorian).
       In anticipation of this Long Count dates input as 0-12.*.*.*.* will
       convert to Gregorian dates in the Mayan year that started in -3113
       (Gregorian).  Long Count dates input as 13.*.*.*.* will convert to
       Gregorian dates in the Mayan year that start in 2012 (Gregorian).

       Example:

	  use DateTime;
	  use DateTime::Calendar::Mayan;

	  my $dtcm = DateTime::Calendar::Mayan->new( baktun => 0 );
	  print $dtcm->date, "\n";
	  print DateTime->from_object( object => $dtcm )->ymd, "\n";

	  $dtcm->set( baktun => 13);
	  print $dtcm->date, "\n";
	  print DateTime->from_object( object => $dtcm )->ymd, "\n";

       Will print:

	  13.0.0.0.0
	  -3113-08-11
	  13.0.0.0.0
	  2012-12-21

       As you can see the Long Count dates are identical but the Gregorian
       equivalent dates are different.

       Support for a count of Mayan "years" or "cycles" allowing accurate
       conversion to/from Gregorian dates may be added to this module in the
       future.	This would be an extension to the historical Long Count
       calendar.

CREDITS
       Dave Rolsky (DROLSKY) for the DateTime project and carrying us this
       far.

       Eugene van der Pijll (PIJLL) for DateTime::Calendar::Julian which I
       looked at more then once.

       Calendrical Calculations "The Millennium Edition" By Edward M. Reingold
       & Nachum Dershowitz.  (ISBN 0-521-77752-6 paperback)
	  http://www.calendarists.com

       Abigail (ABIGAIL) for Date::Maya from which I confirmed the algorithm
       for Mayan years.

       "Frequently Asked Questions about Calendars" by Claus Tondering.
	  http://www.tondering.dk/claus/calendar.html

SUPPORT
       Support for this module is provided via the datetime@perl.org email
       list. See http://lists.perl.org/ for more details.

AUTHOR
       Joshua Hoblitt <jhoblitt@cpan.org>

COPYRIGHT
       Copyright (c) 2003 Joshua Hoblitt.  All rights reserved.	 This program
       is free software; you can redistribute it and/or modify it under the
       same terms as Perl itself.

       The full text of the license can be found in the LICENSE file included
       with this module.

SEE ALSO
       datetime@perl.org mailing list

       http://datetime.perl.org/

perl v5.14.1			  2011-07-21	  DateTime::Calendar::Mayan(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net