Simon Marchetto [Wed, 29 Oct 2014 10:27:50 +0000 (11:27 +0100)]
Change-Id: I5546673d36daed10ea921ddb5c067bb4580b16f5

index 807a60e..7901f75 100644 (file)
@@ -2,13 +2,13 @@
c!Purpose
c     Example of calling scilab from an other C or Fortran program
c!Description
-c     This program demonstrate on a simple example to use scilab as a
+c     This program demonstrate on a simple example to use scilab as a
c     procedure for an other program
c     The computations performed are:
c      -1-  computation of x such that a*x=b  (a and b real matrices)
c      -2-  computation of y=a*x-b
c     All scilab functions and instructions may be used in this context
-c     for complex instruction, it may be usefull to defined it in a file
+c     for complex instruction, it may be usefull to defined it in a file
c     and use exec
c!
@@ -24,30 +24,34 @@ c
a(2,2)=4.d0
b(1)=1.d0
b(2)=0.d0
+
+c     create temp directory
+      call settmpdir
+
c
-c     first call to inisci for Scilab initializations
+c     call to inisci for Scilab initializations
c     10000 is the initial stack size
c
call inisci(-1,10000, ierr)
if(ierr.gt.0) stop
c
-c     scilab start-up execution. quit added to leave parser after
+c     scilab start-up execution. quit added to leave parser after
c     start-up execution
c
call scirun('exec(''SCI/etc/scilab.start'',-1);quit')
-c
+c
c     Program's variables  a and b sent to Scilab.
c     .  2nd argument of matz not referenced here.
-c     .  3rd argument is the first dimension of the transmitted
+c     .  3rd argument is the first dimension of the transmitted
c     .  variable (here dimension a(2,.) )
c     .  arguments #3 and 4 represent the number of rows and columns
c     .  respectively
c     .  argument #5 is a character string name of the scilab variable
c     .  argument #6 (here job=1) means direction fortran--->scilab
-c
+c
call matz(a,a,2,2,2,'a',1)
call matz(b,b,2,2,1,'b',1)
-c
+c
c     call scirun to solve the problem
c     . \\ needed to enter a \ in fortran string
c
@@ -65,7 +69,7 @@ c     .  last argument (job=0) means:   scilab --->program
c
c     call scilab to check the result
c     .  note  -1- a,x,b are still in the scilab stack
-c     .        -2- this computation might be done in the first call to scirun
+c     .        -2- this computation might be done in the first call to scirun
call scirun('y=a*x-b;quit')
c
c     Scilab variable y get in program and displayed