1
C @(#)ftpars.for 19.1 (ES0-DMD) 02/25/03 13:17:35
2
C===========================================================================
3
C Copyright (C) 1995 European Southern Observatory (ESO)
5
C This program is free software; you can redistribute it and/or
6
C modify it under the terms of the GNU General Public License as
7
C published by the Free Software Foundation; either version 2 of
8
C the License, or (at your option) any later version.
10
C This program is distributed in the hope that it will be useful,
11
C but WITHOUT ANY WARRANTY; without even the implied warranty of
12
C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
C GNU General Public License for more details.
15
C You should have received a copy of the GNU General Public
16
C License along with this program; if not, write to the Free
17
C Software Foundation, Inc., 675 Massachusetts Ave, Cambridge,
20
C Correspondence concerning ESO-MIDAS should be addressed as follows:
21
C Internet e-mail: midas@eso.org
22
C Postal address: European Southern Observatory
23
C Data Management Division
24
C Karl-Schwarzschild-Strasse 2
25
C D 85748 Garching bei Muenchen
27
C===========================================================================
29
SUBROUTINE FTPARS(PAR1,NIND,NPAR,ISTAT)
30
C++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
31
C.COPYRIGHT: Copyright (c) 1987 European Southern Observatory,
34
C.VERSION: 1.0 ESO-FORTRAN Conversion, AA 17:25 - 13 JAN 1988
36
C.LANGUAGE: F77+ESOext
42
C FITLIB.FOR VERSION 1.0 27 MAR 1984
46
C INTERFACE ROUTINES FOR THE FITTING STRUCTURES
47
C PARSE FUNCTION DEFINITION AND SET UP TABLE WITH PARAMETER NAMES
51
C USE MIDAS I/O INTERFACES TO FRAMES AND TABLES
58
C----------------------------------------------------------------
63
C PAR1 CHAR FUNCTION ARGS (x1,...;p1,...)
66
C NIND INTG NUMBER OF INDEPENDENT VARIABLES
67
C NPAR INTG NUMBER OF FUNCTION PARAMETERS
68
C ISTAT INTG STATUS RETURN
70
INTEGER NIND,NPAR,ISTAT,I,I1
71
INTEGER II,KZ6967,LENGTH,NP1,II1
73
CHARACTER LINE1*80,LINE2*80,C*1,EOFMARK*1,DELIM*1
75
CHARACTER*20 TEST1, TEST2
77
INCLUDE 'MID_INCLUDE:FITI.INC/NOLIST'
78
INCLUDE 'MID_INCLUDE:FITC.INC/NOLIST'
81
C ... SEARCH FOR INDEP VARS
83
II = INDEX(LINE1,'?') - 2
87
IF (C.EQ.',') NIND = NIND + 1
95
C ... GET TOKENS CORRESPONDING TO PARAMS
104
99 KZ6967 = KZ6967 + 1
105
IF ( .NOT. (.NOT.EOF)) GO TO 50
106
CALL FTTOKN(LINE2,EOFMARK,DELIM,TOKEN,LENGTH,EOF)
110
FZPTOKEN(NP1) = TOKEN
113
C CHECK THAT PARAMETER NAME IS NOT DUPLICATED
116
CALL FORUPC(TEST1, TEST1)
120
CALL FORUPC(TEST2, TEST2)
121
C IF (TEST1(1:II1).EQ.TEST2(1:II1)) THEN