summaryrefslogtreecommitdiff
path: root/Trivac/data/Ktests_proc/pkinet2.c2m
blob: 188a4baab84234263d7e7b43d5f2845eb3e3b7da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
***********************************************
* Procedure :  pkinet2.c2m                    *
* Author    :  D. Sekki (04/08)               *
***********************************************
PARAMETER KINET2 MACRO TRACK SYSTEM FLUX ::
    ::: LINKED_LIST KINET2 MACRO TRACK SYSTEM FLUX ; ;
MODULE INIKIN: KINSOL: BIVACA: TRIVAA: GREP: DELETE: END: ;
LINKED_LIST SYSTEMP KINET1 ;
INTEGER itr iedit nDel := 0 0 6 ;
REAL    delta := 0.01 ;
INTEGER ity maxItr nadi ;
STRING  fTemp pTemp ;
REAL    precf ttf ;
 :: >>fTemp<< >>pTemp<< >>maxItr<<
     >>ttf<< >>precf<< >>nadi<< ;
GREP: SYSTEM :: GETVAL 'STATE-VECTOR' 4 >>ity<< ;
KINET1 := INIKIN: MACRO TRACK SYSTEM FLUX :: EDIT 1
          NDEL <<nDel>>
          BETA 0.000266 0.001491 0.001316
               0.002849 0.000896 0.000182
          LAMBDA 0.0127 0.0317 0.1150
                 0.3110 1.4000 3.8700
          CHID 1.0 1.0 1.0 1.0 1.0 1.0
               0.0 0.0 0.0 0.0 0.0 0.0 ;
IF ity 1 = THEN
  SYSTEMP := BIVACA: MACRO TRACK :: EDIT 0 UNIT ;
ELSEIF ity 2 = ity 3 = + THEN
  SYSTEMP := TRIVAA: MACRO TRACK :: EDIT 0 UNIT ;
ELSE
  ECHO "Unknown type=" ity ;
ENDIF ;
WHILE itr maxItr < DO
  EVALUATE itr := itr 1 + ;
  IF itr maxItr = THEN
    EVALUATE iedit := 1 ;
  ENDIF ;
  KINET1 := KINSOL: KINET1 MACRO TRACK SYSTEMP ::
      EDIT <<iedit>>  DELTA <<delta>>
      SCHEME FLUX <<fTemp>> <<ttf>>  PREC <<pTemp>>
      EXTE <<precf>>  ADI <<nadi>> ;
ENDWHILE ;
KINET2 := KINET1 ;
KINET1 SYSTEMP := DELETE: KINET1 SYSTEMP ;
END: ;
QUIT .