1. 05 Jan, 2014 1 commit
    • Liam M. Healy's avatar
      Dyadic functions +, -, *, / with single or sequence arguments · 208c5b18
      Liam M. Healy authored
      + All single-argument behavior should be defined in the ordinary functions.
      + All methods with sequence as one or both arguments moved to grid (because of the need to check for grids), defined by defmethods-dyadic-sequences
      + If one argument is a sequence, scalar argument is mapped to each element
      + If both arguments are sequences, elementwise map on each, so sequences have to be the same length.
      + Warning from ordinary functions if an argument is nil.
      + Tests for 1, 2, 3 arguments added/organized in [[file:~/mathematics/antik/tests/numbers.lisp::(lisp-unit:define-test%20numbers][numbers.lisp]].
      + Add test cases in antik/grid/tests/sequence.lisp for one or both argunments a sequence
      + All tests pass with antik-base only and grid systems loaded.
           #+BEGIN_SRC lisp
           (ql:quickload :lisp-unit)
           (ql:quickload :grid)
           :pa antik
           (lisp-unit:run-tests)
           NUMBERS: 40 assertions passed, 0 failed.
           SEQUENCES: 12 assertions passed, 0 failed.
           TOTAL: 52 assertions passed, 0 failed, 0 execution errors.
           #+END_SRC
      208c5b18
  2. 16 Dec, 2013 1 commit
  3. 27 Nov, 2013 1 commit
    • Liam M. Healy's avatar
      Move definitions between systems · 579cf96b
      Liam M. Healy authored
      Move some definitions of print-grid-readably to grid from
      foreign-array, because physical-dimension relies on this function
      being defined. Remove the (T T) method left in the defgeneric for /i.
      579cf96b
  4. 25 Nov, 2013 1 commit
    • Liam M. Healy's avatar
      Separate, add systems input-output, math-high, mathematics · f0472919
      Liam M. Healy authored
      Separate, add systems new systems that were in the old monolithic
      antik.asd: input-output, math-high, mathematics. Make the retrieval of
      earth orientation parameters (for calibrating UT1 timescale) a
      connected system when Drakma is loaded.
      f0472919
  5. 23 Nov, 2013 1 commit
    • Liam M. Healy's avatar
      Move arithmetic methods that use funcall-dyadic, organize tests · 514bbac1
      Liam M. Healy authored
      Calls to funcall-dyadic only should happen once that function has been defined, and it is meant to handle grid/pq case anyway, so the arithmetic methods (t t) that called it have been moved to where it is defined, which is in the physical-dimension system. Tests have been reorganized, and all pass.
      514bbac1
  6. 28 Dec, 2011 1 commit
    • Liam M. Healy's avatar
      Pass #'length through to CL · bcecd7fe
      Liam M. Healy authored
      It is necessary to pass the function antik:length through to cl:length
      because the function is shadowed (for physical-quantities 'length).
      bcecd7fe
  7. 02 Dec, 2011 1 commit
    • Liam M. Healy's avatar
      Comparison functions with more than two arguments · 5bfba33e
      Liam M. Healy authored
      The generic functions for comparison (<, >, etc.) have been renamed to
      have an "i" at the end, e.g. "<i".  A regular function has been
      defined for each that applies the generic function to each adjacent
      pair to determine the truth of the set.
      5bfba33e
  8. 18 Oct, 2011 1 commit
    • Liam M. Healy's avatar
      Extensions to iterate · 4d37965f
      Liam M. Healy authored
      Add reductions and finders for maximizing and minimizing over
      generalized numbers.  The finders do not work and have been commented
      out.
      4d37965f
  9. 10 Sep, 2011 1 commit
    • Liam M. Healy's avatar
      Relocation generic math functions and methods · 5fabe0c0
      Liam M. Healy authored
      The definition of generic math functions (addition, multiplication,
      etc.) has been moved from grid/generic.lisp to init/generic.lisp, and
      so is loaded before grid is loaded, with the methods that use grid
      functions moved to grid/functions.lisp.  This eliminates two warnings
      that were appearing in compilation.
      5fabe0c0
  10. 24 Aug, 2011 1 commit
  11. 19 Aug, 2011 1 commit
  12. 22 Jun, 2011 1 commit
    • Liam M. Healy's avatar
      Use all-same to determine if elements of a pq grid have all the same dimension · 3dd99b49
      Liam M. Healy authored
      Once again rewrite (grid::make-grid-data (eql 'physical-quantity)) so
      that we no longer use #'reduce at all to find the same dimension, but
      rather #'all-same which now has a new :post-function argument.  Test
      case 
      (MAKE-GRID '((FOREIGN-ARRAY 3) DOUBLE-FLOAT) :INITIAL-CONTENTS '(0.0 #_-3.377500000000000d0_km 0.0))
      formerly would return the double float foreign array, no physical
      quantity, now it returns the correct thing,
      #m(0.000000000000000d0 #_-3.377500000000000d0_km 0.000000000000000d0)
      3dd99b49
  13. 31 May, 2011 1 commit
  14. 24 May, 2011 1 commit
  15. 23 Mar, 2011 1 commit
  16. 01 Mar, 2011 1 commit
  17. 22 Feb, 2011 1 commit
    • Liam M. Healy's avatar
      Grids cannot be scalars in operations with sequences · b47cb8b1
      Liam M. Healy authored
      When performing a mathematical operation with a sequence and a
      non-sequence, the sequence cannot be a grid.  Checking for this
      requires relocating generic.lisp with the generic mathematics
      definitions to a place in which it will be loaded after grid:gridp is
      defined.
      b47cb8b1
  18. 16 Feb, 2011 1 commit
    • Liam M. Healy's avatar
      Move funcall-dyadic · a038eb56
      Liam M. Healy authored
      Move #'funcall-dyadic to a new file physical-quantities/funcall.lisp
      so that it can use gird:grid and grid:gridp, which aren't defined
      where it is called, in generic.lisp.
      a038eb56
  19. 14 Feb, 2011 1 commit
    • Liam M. Healy's avatar
      Dyadic functions with pq-grid arguments · 77e61dbe
      Liam M. Healy authored
      Fixed funcall-dyadic, which is used by basic arithmetic functions like
      #'*i, for cases where one or both arguments is a pq-grid.  In that
      case, the units are simply removed.  This is not as good as restoring
      the proper units after the calculation completes, but it is a step
      towards that goal.  New type 'grid:grid.
      77e61dbe
  20. 31 Jan, 2011 2 commits
    • Liam M. Healy's avatar
      Define @ for cl:* · 3a0ec523
      Liam M. Healy authored
      Define antik:@ as a symbol macro to give 'cl:* because antik:* is
      shadowed, so is can't be used for most recent primary value or
      declaration components.
      3a0ec523
    • Liam M. Healy's avatar
      Use generic math, (setf specification-dimension) · e355f505
      Liam M. Healy authored
      Use generic math functions *, -, etc. in #'cross and in math functions
      *i, etc.  Shadow 'terminate for CCL which has a conflict with iterate.
      e355f505
  21. 30 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Don't coerce-value non-numbers; concatenate-grids with pq non-scalar · 1e0c7f4d
      Liam M. Healy authored
      The function coerce-value won't try to coerce non-numbers, so that
      physical quantities provided as values are passed untouched.  This
      permits concatenate-grids with a designated non-T element-type to
      work, so a test for a foreign-array pq grid has been added, and
      passes. 
      
      GRID-ARRAY-UNITS: 5 assertions passed, 0 failed.
      GRID-SCALAR-UNITS: 9 assertions passed, 0 failed.
      NUMBERS: 38 assertions passed, 0 failed.
      UNITS: 9 assertions passed, 0 failed.
      TOTAL: 61 assertions passed, 0 failed, 0 execution errors.
      1e0c7f4d
  22. 28 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Fix creation-form for lists; add #+debug conditionalizations · a133bd3c
      Liam M. Healy authored
      The creation form for lists was incorrect; it should be quoted in the
      defmethod for lists and not quoted in the defmethod for
      physical-quantity (for pq-dimension).  This caused files with #_ in
      them to fail to load, even though they were compilable.  
      
      Add #+debug conditionalizations to print-ojbect PQs unreadably in all
      cases (with magnitude) and to make sure dimels pass dimelp on input to
      make-pq-object.
      a133bd3c
  23. 19 Jan, 2011 1 commit
  24. 18 Jan, 2011 1 commit
  25. 15 Jan, 2011 2 commits
  26. 14 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Define types for each of the physical dimensions · 3731273f
      Liam M. Healy authored
      Define types for each of the physical dimensions, e.g. 'length,
      'mass.  For several symbols, there are potential conflicts: 'length,
      'time conflict with cl:length cl:time, so they have been shadowed and
      pass-through macros defined.  Changed 'speed to 'velocity because
      'cl:speed can't be bypassed the same way.  There is a conflict of
      'acceleration with 'gsll:acceleration class that needs to be resolved
      in GSLL.
      3731273f
  27. 13 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Make Antik user packages with make-user-package · 5dce4113
      Liam M. Healy authored
      Make Antik user packages with make-user-package.  These packages have
      the use and shadowing list that antik-user does, so that the common
      non-conflicting symbols are accessible, and where symbols conflict, a
      reasonable choice has been made.
      5dce4113
  28. 04 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Mathematical functions on grids · f022b844
      Liam M. Healy authored
      Define monadic and dyadic with scalar functions on grids.  In some
      cases, the same result is available for foreign-arrays using GSLL, but
      these definitions apply to all grids.  Improved formatting in "plain"
      style for 2D arrays; does not define ends of rows and columns but also
      does not inject TeXisms.
      f022b844
  29. 03 Jan, 2011 1 commit
    • Liam M. Healy's avatar
      Physical quantities with grids · 043a16fd
      Liam M. Healy authored
      Start implementation of physical quantities with grid magnitudes.
      Compiles and loads cleanly but mostly non-functional or only
      accidentally functional.
      043a16fd
  30. 01 Jan, 2011 1 commit
  31. 25 Dec, 2010 2 commits
  32. 24 Dec, 2010 5 commits
  33. 14 Dec, 2005 1 commit