CUMIN
fbase.F90
Go to the documentation of this file.
1 
8 
9 module fbase
10 
11  use message_mod
12  use real_precision
13  use clock_mod
15  use linear_algebra
17  use algebra_set
18  use fbase_io
19 
20  implicit none
21 
23  real(rp), parameter :: pi=3.1415926535897932384626433832795028_rp
24 
25  public :: pi
26 
27  public :: sp, rp, real_tol
28 
29  public :: clock
30 
31  public :: r3_x_r_to_rn
32  public :: r3_x_r_to_r
33  public :: r_to_r, r2_to_r, r3_to_r
34  public :: rn_to_rn, r3_to_r3_x_r3
35  public :: rn_x_rm_to_rn
36  public :: rn_x_rm_to_rn_x_rn
37  public :: rn_x_rm_to_rn_x_rm
38  public :: rn_x_r3_x_r_to_rn
39  public :: r3_x_r3_x_r3_to_r
40  public :: r3_x_r_x_r3_to_r
41  public :: r3_x_r_x_r3_to_r3
42  public :: r3_x_r_x_r3_x_r3_x_r_to_r
43  public :: r3_x_r_x_r_x_r3_x_r3_to_r
44  public :: r3_to_r3, r2_to_r2
45  public :: r3_to_rn
46 
47  public :: solve_upper_triangular
48 
49  public :: message, message_2, message_3
50  public :: error_message
51  public :: paragraph, paragraph_2
52  public :: inttostring, inttostring_3
53  public :: integer_to_string
54  public :: number_of_digits
55 
56  public :: dot_product_omp, norm2_omp
58  public :: z_eq_xpay_omp_r1d
59  public :: copy_omp_r1d, copy_omp_r2d
60 
61  public :: sort
62  public :: merge_sorted_set
63  public :: cap_sorted_set
64  public :: findentry
65  public :: shellsort_dec
66  public :: circperm
67  public :: equalset
68 
69  public :: write_r1d
70  public :: write_r2d
71  public :: read_r1d
72  public :: file_count_lines
73  public :: file_exists
74 
75 end module fbase
message_mod::integer_to_string
character(len=:) function, allocatable, public integer_to_string(N)
convert the integer 'N' to a string
Definition: message_mod.F90:275
linear_algebra::solve_upper_triangular
pure real(rp) function, dimension(n), public solve_upper_triangular(U, b, N)
Solve .
Definition: linear_algebra.F90:36
real_precision
Real number precision.
Definition: real_precision.F90:33
message_mod::paragraph_2
subroutine, public paragraph_2(mess, line_jump)
print sub paragraph header
Definition: message_mod.F90:213
linear_algebra_omp::copy_omp_r1d
subroutine, public copy_omp_r1d(x, y)
x(:) := y(:)
Definition: linear_algebra_omp.F90:158
clock_mod
CPU time messurement.
Definition: clock_mod.F90:9
linear_algebra
Simple linear algebra tools.
Definition: linear_algebra.F90:9
message_mod::inttostring_3
character(len=3) function, public inttostring_3(N)
convert the integer 'N' to a string of lenfth 3 0 <= N <= 999
Definition: message_mod.F90:301
real_precision::rp
integer, parameter, public rp
RP : real precision in the code.
Definition: real_precision.F90:76
fbase_io::file_count_lines
integer function, public file_count_lines(fic)
Count lines in a file.
Definition: fbase_io.F90:128
message_mod::inttostring
subroutine, public inttostring(str, N)
convert the integer 'N' to a string
Definition: message_mod.F90:332
real_precision::sp
integer, parameter, public sp
simple precision
Definition: real_precision.F90:47
message_mod::error_message
character(len=:) function, allocatable, public error_message(mess1)
Error message
Definition: message_mod.F90:167
fbase_io::write_r1d
subroutine, public write_r1d(tab, fic, verb)
write 1D real array to file
Definition: fbase_io.F90:31
message_mod::number_of_digits
integer function, public number_of_digits(N)
Determines the number of digits of an integer 'N'.
Definition: message_mod.F90:241
fbase_io::read_r1d
subroutine, public read_r1d(vec, fic)
read 1D real array from file
Definition: fbase_io.F90:106
linear_algebra_omp::z_eq_xpay_omp_r1d
subroutine, public z_eq_xpay_omp_r1d(z, x, a, y)
z(:) := x + a*y(:)
Definition: linear_algebra_omp.F90:218
linear_algebra_omp
Simple linear algebra tools with openMP.
Definition: linear_algebra_omp.F90:9
linear_algebra_omp::dot_product_omp
real(rp) function, public dot_product_omp(x, y)
Scalar product, with openMP.
Definition: linear_algebra_omp.F90:29
linear_algebra_omp::x_eq_xpay_omp_r1d
subroutine, public x_eq_xpay_omp_r1d(x, a, y)
x(:) := x(:) + a*y(:)
Definition: linear_algebra_omp.F90:103
routine_interfaces
Abstract interfaces for procedural arguments.
Definition: routine_interfaces.F90:9
message_mod::message_2
character(len=:) function, allocatable, public message_2(mess)
Print message, level 2
Definition: message_mod.F90:128
message_mod::paragraph
subroutine, public paragraph(mess, line_jump)
print paragraph header
Definition: message_mod.F90:186
fbase_io::write_r2d
subroutine, public write_r2d(tab, fic, verb, transpose)
write 2D real array to file
Definition: fbase_io.F90:59
fbase
TOP-LEVEL MODULE for the 'fbase' project.
Definition: fbase.F90:9
message_mod::message
character(len=:) function, allocatable, public message(mess1)
Print message, level 1
Definition: message_mod.F90:109
fbase_io
Module for input / output:
Definition: fbase_io.F90:8
message_mod
Standard output messages.
Definition: message_mod.F90:9
linear_algebra_omp::norm2_omp
real(rp) function, public norm2_omp(x)
Euclidian norm.
Definition: linear_algebra_omp.F90:82
clock_mod::clock
real(rp) function, public clock()
Returns the internal clock time
Definition: clock_mod.F90:31
message_mod::message_3
character(len=:) function, allocatable, public message_3(mess)
Print message, level 3
Definition: message_mod.F90:147
linear_algebra_omp::x_eq_axpy_omp_r1d
subroutine, public x_eq_axpy_omp_r1d(a, x, y)
x(:) := a*x(:) + y(:)
Definition: linear_algebra_omp.F90:55
fbase_io::file_exists
logical function, public file_exists(filename)
Check if the file exists.
Definition: fbase_io.F90:154
real_precision::real_tol
real(rp), parameter, public real_tol
Definition: real_precision.F90:77
linear_algebra_omp::copy_omp_r2d
subroutine, public copy_omp_r2d(y, x)
y(:,:) := x(:,:)
Definition: linear_algebra_omp.F90:187
fbase::pi
real(rp), parameter, public pi
REAL CONSTANT Pi.
Definition: fbase.F90:23