home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / sci / math / symbolic / 2072 < prev    next >
Encoding:
Text File  |  1992-07-25  |  2.8 KB  |  61 lines

  1. Newsgroups: sci.math.symbolic
  2. Path: sparky!uunet!darwin.sura.net!wupost!gumby!destroyer!news.iastate.edu!pv343f.vincent.iastate.edu!whitmore
  3. From: whitmore@iastate.edu (Kurt D Whitmore)
  4. Subject: Re: Symbolic Algebra subroutine library?
  5. Message-ID: <whitmore.712081194@pv343f.vincent.iastate.edu>
  6. Sender: news@news.iastate.edu (USENET News System)
  7. Organization: Iowa State University, Ames IA
  8. References: <1992Jul24.224350.12931@cco.caltech.edu>
  9. Date: Sat, 25 Jul 1992 16:19:54 GMT
  10. Lines: 49
  11.  
  12. In <1992Jul24.224350.12931@cco.caltech.edu> terry@wag.caltech.edu (Terry R. Coley) writes:
  13.  
  14.  
  15. >I would like to know if there is a symbolic algebra subroutine 
  16. >library suitable for linking to C/C++ programs.  More specifically,
  17. >I would like to use the algebraic manipulation capabilities of a
  18. >package like Mathematica (as just one example) available from
  19. >within a compiled and linked program.  For example, the program
  20. >might construct an expression like (a + b)(c + d) represented
  21. >internally in some data structure (maybe a tree, maybe just a 
  22. >string).  Then, a subroutine called with this expression as an
  23. >argument would perform an operation on the expression and return
  24. >the result in the same data structure type.  For example, a routine
  25. >called multiply might return ac + ad + bc + bd in the data structure.
  26.  
  27. >After watching this news group for a few weeks, it appears most
  28. >symbolic work is done through front ends like that with Mathematica
  29. >or Maple.  Do either of these have an API (application programmer
  30. >interface) for accessing their functionality?
  31.  
  32. >Some people have suggested shelling out a separate process to
  33. >run Mathematica and then parse the resulting output.  This is
  34. >not acceptable for a variety of reasons, not the least of which
  35. >are speed, portability, etc.  My program will be generating
  36. >hundreds of expressions, doing simplifications, and using the
  37. >results.  For now I have programmed the simple expression tree
  38. >simplifications myself, including some simple derivatives.  But
  39. >as the expressions the program creates become more complex, I
  40. >will not be able to compete/reproduce the functionality of
  41. >good symbolic algebra packages.  Therefore, I would like an API
  42. >to such a package!  Any suggestions?
  43.  
  44. >-- 
  45. >    - Terry
  46. >terry@wag.caltech.edu 818-397-2724 818-585-0918 (FAX)
  47. >Terry Coley, Caltech 139-74, Pasadena, CA  91125
  48.  
  49.  
  50. Mathematica 2.1.x.x has totaly reworked Mathlink and has improved the documentation greatly.
  51.  
  52. MathLink allows C functions to be defined externally to mathematica, much like
  53. what you want to do, and then used as functions within Mma via Mathlink.
  54.  
  55. Not only can you have Mma call up C functions but you can also have C call up Mma to do calculations and pipe it back to your C program if you dont want to
  56. write code for say, a nasty integration.
  57.  
  58. Kurt D. Whitmore
  59. whitmore@iastate.edu
  60.  
  61.