URI:
       tsimpleFG.f90 - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
  HTML git clone git://src.adamsgaard.dk/pism
   DIR Log
   DIR Files
   DIR Refs
   DIR LICENSE
       ---
       tsimpleFG.f90 (3244B)
       ---
            1 program simpleFG
            2 !   Copyright (C) 2005-2007 Ed Bueler
            3 !  
            4 !   This file is part of PISM.
            5 !  
            6 !   PISM is free software; you can redistribute it and/or modify it under the
            7 !   terms of the GNU General Public License as published by the Free Software
            8 !   Foundation; either version 3 of the License, or (at your option) any later
            9 !   version.
           10 !  
           11 !   PISM is distributed in the hope that it will be useful, but WITHOUT ANY
           12 !   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
           13 !   FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
           14 !   details.
           15 !  
           16 !   You should have received a copy of the GNU General Public License
           17 !   along with PISM; if not, write to the Free Software
           18 !   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
           19 
           20 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
           21 ! Runs testsFG; see reference there.
           22 !
           23 ! Compilation and linking example:
           24 !  $ gfortran -c testsFG.f90
           25 !  $ gfortran -c simpleFG.f90
           26 !  $ gfortran testsFG.o simpleFG.o -o simpleFG
           27 !
           28 ! Example dialog:
           29 !        $ ./simpleFG 
           30 !         Enter  t, r, z  (in a, km, m, resp.):
           31 !        500 500 0  
           32 !   Result from Test F (functions of r only):
           33 !               H =   1925.29529003980       (m)
           34 !               M = -1.050983313290947E-002  (m/a)
           35 !         (functions of r,z):
           36 !               T =   265.122614956470       (deg K)
           37 !               U = -6.123215695366028E-017  (m/a)
           38 !               w =  1.153402815543494E-018  (m/a)
           39 !           Sigma =  0.264346036328259       (10^(-3) deg K/a)
           40 !         Sigma_c = -0.373725522145257       (10^(-3) deg K/a)
           41 !          
           42 !         Result from Test G (functions of t,r only):
           43 !               H =   2101.89975093468       (m)
           44 !               M =  4.073801873505128E-002  (m/a)
           45 !         (functions of t,r,z):
           46 !               T =   267.835031282999       (deg K)
           47 !               U = -2.607041335277112E-016  (m/a)
           48 !               w =  3.064052270958646E-018  (m/a)
           49 !           Sigma =   1.21539202938520       (10^(-3) deg K/a)
           50 !         Sigma_c =  -1.32366417749281       (10^(-3) deg K/a)
           51 !
           52 ! ELB 7/27/07
           53 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
           54 
           55    use testsFG
           56 
           57    real(kind) :: t, r, z, H, TT, U, w, Sig, M, Sigc
           58 
           59    print *, 'Enter  t, r, z  (in a, km, m, resp.):'
           60    read *, t, r, z
           61 
           62    call testF(r*1000.0_kind,z,H,TT,U,w,Sig,M,Sigc)
           63 
           64    print *, 'Result from Test F (functions of r only):'
           65    print *, '      H =', H, ' (m)'
           66    print *, '      M =', M*SperA, ' (m/a)'
           67    print *, '(functions of r,z):'
           68    print *, '      T =', TT, ' (deg K)'
           69    print *, '      U =', U*SperA, ' (m/a)'
           70    print *, '      w =', w*SperA, ' (m/a)'
           71    print *, '  Sigma =', Sig*SperA*1.0e3_kind, ' (10^(-3) deg K/a)'
           72    print *, 'Sigma_c =', Sigc*SperA*1.0e3_kind, ' (10^(-3) deg K/a)'
           73    print *, ' '
           74 
           75    call testG(t*SperA,r*1000.0_kind,z,H,TT,U,w,Sig,M,Sigc)
           76 
           77    print *, 'Result from Test G (functions of t,r only):'
           78    print *, '      H =', H, ' (m)'
           79    print *, '      M =', M*SperA, ' (m/a)'
           80    print *, '(functions of t,r,z):'
           81    print *, '      T =', TT, ' (deg K)'
           82    print *, '      U =', U*SperA, ' (m/a)'
           83    print *, '      w =', w*SperA, ' (m/a)'
           84    print *, '  Sigma =', Sig*SperA*1.0e3_kind, ' (10^(-3) deg K/a)'
           85    print *, 'Sigma_c =', Sigc*SperA*1.0e3_kind, ' (10^(-3) deg K/a)'
           86 
           87 end program simpleFG