]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/mathlib/gen/divon/grdcmp.F
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / MINICERN / mathlib / gen / divon / grdcmp.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.1.1.1 1996/04/01 15:03:26 mclareni
6* Mathlib gen
7*
8*
9#include "gen/pilot.h"
10 SUBROUTINE GRDCMP (N,NCOMP,INDEX,X,FVAL,DELTA,XHI,XTEMP,GRAD)
11 INTEGER N, NCOMP
12 INTEGER INDEX(NCOMP)
13 DOUBLE PRECISION FVAL, DELTA
14 DOUBLE PRECISION X(N), XHI(N), XTEMP(N), GRAD(NCOMP)
15 INTEGER I, II
16 DOUBLE PRECISION DELX, DFUN, FDIF, FTEMP
17CMM INTEGER IABS
18 IF(NCOMP.LE.0) RETURN
19 DO 10 I=1,N
20 XTEMP(I)=X(I)
21 10 CONTINUE
22 DO 20 I=1,NCOMP
23 DELX=DELTA
24 II=ABS(INDEX(I))
25 IF((X(II)+DELTA).GT.XHI(II)) DELX=-DELTA
26 XTEMP(II)=X(II)+DELX
27 FTEMP=DFUN(N,XTEMP)
28 XTEMP(II)=X(II)
29 FDIF=(FTEMP-FVAL)/DELX
30 GRAD(I)=FDIF
31 20 CONTINUE
32 RETURN
33 END