Author Topic: BLAS and LAPACK in AutoLisp  (Read 1208 times)

0 Members and 1 Guest are viewing this topic.

mailmaverick

  • Bull Frog
  • Posts: 494
BLAS and LAPACK in AutoLisp
« on: March 24, 2016, 04:46:47 AM »
How to use high-end algebraic libraries such as BLAS and LAPACK in Autolisp ?

http://www.netlib.org/lapack/

http://www.netlib.org/blas/

JohnK

  • Administrator
  • Seagull
  • Posts: 10653
Re: BLAS and LAPACK in AutoLisp
« Reply #1 on: March 24, 2016, 06:06:11 AM »
Rewrite them in Autolisp.
TheSwamp.org (serving the CAD community since 2003)
Member location map - Add yourself

Donate to TheSwamp.org

dgorsman

  • Water Moccasin
  • Posts: 2437
Re: BLAS and LAPACK in AutoLisp
« Reply #2 on: March 24, 2016, 11:59:35 AM »
You'll need to do some legwork and probably some more refinement of what you are going to do with them.  If you are going to use them in LISP, you can try creating an interface in dotNET which references those DLLs (assuming they are) and wraps them with some LISP functions.  If you are going to use them with dotNET then same thing, only easier.
If you are going to fly by the seat of your pants, expect friction burns.

try {GreatPower;}
   catch (notResponsible)
      {NextTime(PlanAhead);}
   finally
      {MasterBasics;}

mailmaverick

  • Bull Frog
  • Posts: 494
Re: BLAS and LAPACK in AutoLisp
« Reply #3 on: March 25, 2016, 03:07:54 AM »
Dear dgorsman,
I know LISP but I dont know DOT NET. Yes there are DLLs of BLAS / LAPACK which are available with me.

But how to call those DLLs from LISP ? Please help.

dgorsman

  • Water Moccasin
  • Posts: 2437
Re: BLAS and LAPACK in AutoLisp
« Reply #4 on: March 28, 2016, 10:40:56 AM »
You don't call a DLL, you call methods and properties.  If there is a COM/ActiveX interface you can do that using the (vlax-...) functions.  Otherwise you have to build your own wrapper.
If you are going to fly by the seat of your pants, expect friction burns.

try {GreatPower;}
   catch (notResponsible)
      {NextTime(PlanAhead);}
   finally
      {MasterBasics;}