source: LMDZ5/trunk/libf/dyn3dmem/coefpoly.F @ 1907

Last change on this file since 1907 was 1907, checked in by lguez, 10 years ago

Added a copyright property to every file of the distribution, except
for the fcm files (which have their own copyright). Use svn propget on
a file to see the copyright. For instance:

$ svn propget copyright libf/phylmd/physiq.F90
Name of program: LMDZ
Creation date: 1984
Version: LMDZ5
License: CeCILL version 2
Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
See the license file in the root directory

Also added the files defining the CeCILL version 2 license, in French
and English, at the top of the LMDZ tree.

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 1.3 KB
Line 
1!
2! $Header$
3!
4      SUBROUTINE coefpoly ( Xf1, Xf2, Xprim1, Xprim2, xtild1,xtild2 ,
5     ,                                          a0,a1,a2,a3         )
6      IMPLICIT NONE
7c
8c   ...  Auteur :   P. Le Van  ...
9c
10c
11c    Calcul des coefficients a0, a1, a2, a3 du polynome de degre 3 qui
12c      satisfait aux 4 equations  suivantes :
13
14c    a0 + a1*xtild1 + a2*xtild1*xtild1 + a3*xtild1*xtild1*xtild1 = Xf1
15c    a0 + a1*xtild2 + a2*xtild2*xtild2 + a3*xtild2*xtild2*xtild2 = Xf2
16c               a1  +     2.*a2*xtild1 +     3.*a3*xtild1*xtild1 = Xprim1
17c               a1  +     2.*a2*xtild2 +     3.*a3*xtild2*xtild2 = Xprim2
18
19c  On en revient a resoudre un systeme de 4 equat.a 4 inconnues a0,a1,a2,a3
20
21      REAL(KIND=8) Xf1, Xf2,Xprim1,Xprim2, xtild1,xtild2, xi
22      REAL(KIND=8) Xfout, Xprim
23      REAL(KIND=8) a1,a2,a3,a0, xtil1car, xtil2car,derr,x1x2car
24
25      xtil1car = xtild1 * xtild1
26      xtil2car = xtild2 * xtild2
27
28      derr= 2. *(Xf2-Xf1)/( xtild1-xtild2)
29
30      x1x2car = ( xtild1-xtild2)*(xtild1-xtild2)
31
32      a3 = (derr + Xprim1+Xprim2 )/x1x2car
33      a2     = ( Xprim1 - Xprim2 + 3.* a3 * ( xtil2car-xtil1car ) )    /
34     /           (  2.* ( xtild1 - xtild2 )  )
35
36      a1     = Xprim1 -3.* a3 * xtil1car     -2.* a2 * xtild1
37      a0     =  Xf1 - a3 * xtild1* xtil1car -a2 * xtil1car - a1 *xtild1
38
39      RETURN
40      END
Note: See TracBrowser for help on using the repository browser.