A Modular Arbitrary-Order Ocean-Atmosphere Model -- Stochastic implementation
test_WL_tensor.f90
Go to the documentation of this file.
1 
2 ! test_WL_tensor.f90
3 !
4 !> Small program to print the WL tensors.
5 !
6 !> @copyright
7 !> 2018 Jonathan Demaeyer.
8 !> See LICENSE.txt for license information.
9 !
10 !---------------------------------------------------------------------------!
12 
13  USE aotensor_def, only: init_aotensor
14  USE wl_tensor
16  USE stoch_params, only:mems
17 
18  INTEGER :: m
19 
20  CALL init_aotensor ! Initialize the aotensor
21  CALL init_wl_tensor ! Compute the tensor
22 
23  print*, 'M12def',m12def
24  print*, 'M21def',m21def
25  print*, 'M22def',m22def
26  print*, 'Ldef',ldef
27  print*, 'B14def',b14def
28  print*, 'B23def',b23def
29  print*, 'Mdef',mdef
30 
31 
32  print*, 'M11'
33  print*, m11
34  print*, 'M12'
35  CALL print_tensor(m12)
36  print*, 'M13'
37  print*, m13
38  print*, 'M1tot'
39  print*, m1tot
40  print*, 'M21'
41  CALL print_tensor(m21)
42  print*, 'M22'
43  CALL print_tensor(m22)
44  print*, "M3 terms..."
45  print*, 'L1'
46  DO m=1,mems
47  print*, m
48  CALL print_tensor(l1(:,m))
49  ENDDO
50  print*, 'L2'
51  DO m=1,mems
52  print*, m
53  CALL print_tensor(l2(:,m))
54  ENDDO
55  print*, 'L4'
56  DO m=1,mems
57  print*, m
58  CALL print_tensor(l4(:,m))
59  ENDDO
60  print*, 'L5'
61  DO m=1,mems
62  print*, m
63  CALL print_tensor(l5(:,m))
64  ENDDO
65  print*, 'Ltot'
66  DO m=1,mems
67  print*, m
68  CALL print_tensor(ltot(:,m))
69  ENDDO
70  print*, 'B1'
71  DO m=1,mems
72  print*, m
73  CALL print_tensor(b1(:,m))
74  ENDDO
75  print*, 'B2'
76  DO m=1,mems
77  print*, m
78  CALL print_tensor(b2(:,m))
79  ENDDO
80  print*, 'B3'
81  DO m=1,mems
82  print*, m
83  CALL print_tensor(b3(:,m))
84  ENDDO
85  print*, 'B4'
86  DO m=1,mems
87  print*, m
88  CALL print_tensor(b3(:,m))
89  ENDDO
90  print*, 'B14'
91  DO m=1,mems
92  print*, m
93  CALL print_tensor(b14(:,m))
94  ENDDO
95  print*, 'B23'
96  DO m=1,mems
97  print*, m
98  CALL print_tensor(b23(:,m))
99  ENDDO
100  print*, 'Mtot'
101  DO m=1,mems
102  print*, m
103  CALL print_tensor4(mtot(:,m))
104  ENDDO
105 
106 
107 END PROGRAM test_wl_tensor
108 
The stochastic models parameters module.
logical, public b14def
Definition: WL_tensor.f90:75
logical, public b23def
Definition: WL_tensor.f90:75
logical, public ldef
Definition: WL_tensor.f90:75
type(coolist), dimension(:), allocatable, public m12
Second component of the M1 term.
Definition: WL_tensor.f90:43
type(coolist), dimension(:,:), allocatable, public l4
Fourth linear tensor.
Definition: WL_tensor.f90:55
logical, public m21def
Definition: WL_tensor.f90:75
type(coolist), dimension(:,:), allocatable, public l5
Fifth linear tensor.
Definition: WL_tensor.f90:56
The equation tensor for the coupled ocean-atmosphere model with temperature which allows for an exten...
type(coolist), dimension(:,:), allocatable, public b2
Second quadratic tensor.
Definition: WL_tensor.f90:61
Tensor utility module.
Definition: tensor.f90:18
real(kind=8), dimension(:), allocatable, public m13
Third component of the M1 term.
Definition: WL_tensor.f90:44
type(coolist), dimension(:,:), allocatable, public b14
Joint 1st and 4th tensors.
Definition: WL_tensor.f90:64
logical, public m12def
Definition: WL_tensor.f90:75
type(coolist), dimension(:), allocatable, public m22
Second tensor of the M2 term.
Definition: WL_tensor.f90:49
type(coolist), dimension(:,:), allocatable, public b3
Third quadratic tensor.
Definition: WL_tensor.f90:62
The WL tensors used to integrate the model.
Definition: WL_tensor.f90:18
type(coolist4), dimension(:,:), allocatable, public mtot
Tensor for the cubic terms.
Definition: WL_tensor.f90:67
type(coolist), dimension(:,:), allocatable, public l1
First linear tensor.
Definition: WL_tensor.f90:53
type(coolist), dimension(:,:), allocatable, public l2
Second linear tensor.
Definition: WL_tensor.f90:54
subroutine, public print_tensor4(t)
Routine to print a rank-4 tensor coolist.
Definition: tensor.f90:922
type(coolist), dimension(:,:), allocatable, public b23
Joint 2nd and 3rd tensors.
Definition: WL_tensor.f90:65
program test_wl_tensor
Small program to print the WL tensors.
logical, public mdef
Boolean to (de)activate the computation of the terms.
Definition: WL_tensor.f90:75
logical, public m22def
Definition: WL_tensor.f90:75
type(coolist), dimension(:,:), allocatable, public ltot
Total linear tensor.
Definition: WL_tensor.f90:57
subroutine, public init_wl_tensor
Subroutine to initialise the WL tensor.
Definition: WL_tensor.f90:94
real(kind=8), dimension(:), allocatable, public m11
First component of the M1 term.
Definition: WL_tensor.f90:42
subroutine, public init_aotensor
Subroutine to initialise the aotensor tensor.
type(coolist), dimension(:), allocatable, public m21
First tensor of the M2 term.
Definition: WL_tensor.f90:48
type(coolist), dimension(:,:), allocatable, public b1
First quadratic tensor.
Definition: WL_tensor.f90:60
subroutine, public print_tensor(t, s)
Routine to print a rank 3 tensor coolist.
Definition: tensor.f90:399
real(kind=8), dimension(:), allocatable, public m1tot
Total vector.
Definition: WL_tensor.f90:45
integer mems
Number of steps in the memory kernel integral.