1
C @(#)cauchy2d.for 19.1 (ES0-DMD) 02/25/03 13:17:28
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 Massachusetss Ave, Cambridge,
20
C Corresponding 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 CAUC2D(X,NP,PARAM,Y,DERIV)
30
C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
31
C.COPYRIGHT: Copyright (c) 1987 European Southern Observatory,
34
C.VERSION: 1.0 ESO-FORTRAN Conversion, AA 18:01 - 21 DEC 1987
36
C.LANGUAGE: F77+ESOext
40
C--------------------------------------------------------------
41
C**********************************************
44
C COMMON /VMR/MADRID(1)
47
C Y(X;P1,P2,P3) = P1/(1.+(2(X-P2)/P3)**2)
49
C**********************************************
50
C Author: O.-G. Richter, ESO Garching
54
DOUBLE PRECISION Y,PARAM(NP),DERIV(NP)
58
A = 2.0D0* (X(1)-PARAM(2))/PARAM(4)
59
B = 2.0D0* (X(2)-PARAM(3))/PARAM(5)
60
DERIV(1) = 1.0D0/ (1.D0+A*A+B*B)
62
DERIV(2) = 4.0D0*Y*DERIV(1)*A/PARAM(4)
63
DERIV(3) = 4.0D0*Y*DERIV(1)*B/PARAM(5)
64
DERIV(4) = 0.5D0*A*DERIV(2)
65
DERIV(5) = 0.5D0*B*DERIV(3)