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
           NUMBERS: 40 assertions passed, 0 failed.
           SEQUENCES: 12 assertions passed, 0 failed.
           TOTAL: 52 assertions passed, 0 failed, 0 execution errors.
  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.
  4. 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.
  5. 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.
  6. 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.
  7. 03 Jun, 2011 1 commit
    • Liam M. Healy's avatar
      Add two arguments to atan · 485b39e6
      Liam M. Healy authored
      New arguments default and zero-enough to handle case where arctangent
      is undefined; if both numerator and denominator are essentially zero
      (that is, absolute value less than zero-enough), then return default.
  8. 27 Mar, 2011 1 commit
  9. 26 Mar, 2011 1 commit
  10. 23 Mar, 2011 1 commit
  11. 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
  12. 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.
  13. 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.
  14. 19 Jan, 2011 1 commit
  15. 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.
  16. 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.
  17. 25 Dec, 2010 1 commit
  18. 24 Dec, 2010 1 commit
    • Liam M. Healy's avatar
      Define math functions · 9324e05e
      Liam M. Healy authored
      Define generic simple math functions that have definitions for numbers
      in CL, like #'+, #'cos, etc.  These call the CL function if the
      argument(s) are numbers, but method(s) may be defined for non-numbers
      different objects.  Define a package antik-user which will import
      symbols from antik and other packages, but will be left to the user
      for other definitions.  Add copyright and license notice.