-
Notifications
You must be signed in to change notification settings - Fork 0
/
my_f90snippets_scrapbook.f90
131 lines (100 loc) · 1.33 KB
/
my_f90snippets_scrapbook.f90
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
!\if
if( $1 ) then
$0
endif
!\do
do $1=$2, $3
$0
end do
!\debug
!DEBUG
print*, '$1= ', $1, " ", __FILE__, __LINE__
$0
pause
!ENDDEBUG
!\prog
program $1
implicit none
$0
end program
!\openr
open( newunit = $1, file = '$2', action = 'read', status = 'old')
$0
close($1)
!\openw
open( newunit = $1, file = '$2', action = 'write', status = 'replace')
$0
close($1)
!\r8
real( dp )$1 :: $0
!\int
integer$1 :: $0
!\char
character( len = $1 )$2 :: $0
!\type
type :: $1
$0
end type
!\sub
subroutine $1( $2 )
!arguments
$2
!local
!allocation
!implementation
$0
end subroutine
!\func
function $1( $2 ) result( $3 )
!arguments
$2
$3
!local
!allocation
!implementation
$0
$3 =
end function
!\mod
module $1
implicit none
$0
contains
end module
!\__
__FILE__, __LINE__
!\sel
select case( $1 )
case( $2 )
$0
case default
end select
!\watch
print*, '$1= ', $1, " ", __FILE__, __LINE__
$0
!\in
intent( in )$1
!\out
intent( out )$1
!\ino
intent( inout )$1
!\all
allocatable &
!allocate($1($2))
!deallocate($1)
:: $1( :$0 )
!
!\par
parameter
!\dow
do while( $1 )
$0
enddo
!\logi
logical$1 :: $0
!\pause
print*, 'paused @ ', __FILE__, __LINE__; read( *, * ) paused ! character( len = 1 ), private :: paused
!\prin
print*, $0, __FILE__, __LINE__
!\sto
print*, "Not ready!", __FILE__, __LINE__; stop