GCC Code Coverage Report


Directory: src/lib/
File: src/lib/mod_initialiser_ones.f90
Date: 2024-06-28 12:51:18
Exec Total Coverage
Lines: 10 10 100.0%
Functions: 0 0 -%
Branches: 142 228 62.3%

Line Branch Exec Source
1 !!!#############################################################################
2 !!! Code written by Ned Thaddeus Taylor
3 !!! Code part of the ATHENA library - a feedforward neural network library
4 !!!#############################################################################
5 !!! module contains implementation of the ones initialiser
6 !!!#############################################################################
7 module initialiser_ones
8 use constants, only: real12
9 use custom_types, only: initialiser_type
10 implicit none
11
12
13 type, extends(initialiser_type) :: ones_type
14 contains
15 procedure, pass(this) :: initialise => ones_initialise
16 end type ones_type
17 type(ones_type) :: ones
18
19
20 private
21
22 public :: ones
23
24
25 contains
26
27 !!!#############################################################################
28 !!! Ones initialisation
29 !!!#############################################################################
30 57 pure subroutine ones_initialise(this, input, fan_in, fan_out)
31 implicit none
32 class(ones_type), intent(inout) :: this
33 real(real12), dimension(..), intent(out) :: input
34 integer, optional, intent(in) :: fan_in, fan_out ! no. in and out params
35
36 select rank(input)
37 rank(0)
38 1 input = 1._real12
39 rank(1)
40
6/10
✗ Branch 0 not taken.
✓ Branch 1 taken 19 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 19 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 19 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 19 times.
✓ Branch 12 taken 65 times.
✓ Branch 13 taken 19 times.
84 input = 1._real12
41 rank(2)
42
12/20
✗ Branch 0 not taken.
✓ Branch 1 taken 11 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 11 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 11 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 11 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 11 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 11 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 11 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 11 times.
✓ Branch 24 taken 20 times.
✓ Branch 25 taken 11 times.
✓ Branch 26 taken 20 times.
✓ Branch 27 taken 20 times.
51 input = 1._real12
43 rank(3)
44
18/30
✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 27 not taken.
✓ Branch 28 taken 1 times.
✗ Branch 30 not taken.
✓ Branch 31 taken 1 times.
✗ Branch 33 not taken.
✓ Branch 34 taken 1 times.
✓ Branch 36 taken 1 times.
✓ Branch 37 taken 1 times.
✓ Branch 38 taken 1 times.
✓ Branch 39 taken 1 times.
✓ Branch 40 taken 1 times.
✓ Branch 41 taken 1 times.
4 input = 1._real12
45 rank(4)
46
24/40
✗ Branch 0 not taken.
✓ Branch 1 taken 12 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 12 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 12 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 12 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 12 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 12 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 12 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 12 times.
✗ Branch 24 not taken.
✓ Branch 25 taken 12 times.
✗ Branch 27 not taken.
✓ Branch 28 taken 12 times.
✗ Branch 30 not taken.
✓ Branch 31 taken 12 times.
✗ Branch 33 not taken.
✓ Branch 34 taken 12 times.
✗ Branch 36 not taken.
✓ Branch 37 taken 12 times.
✗ Branch 39 not taken.
✓ Branch 40 taken 12 times.
✗ Branch 42 not taken.
✓ Branch 43 taken 12 times.
✗ Branch 45 not taken.
✓ Branch 46 taken 12 times.
✓ Branch 48 taken 53 times.
✓ Branch 49 taken 12 times.
✓ Branch 50 taken 149 times.
✓ Branch 51 taken 53 times.
✓ Branch 52 taken 429 times.
✓ Branch 53 taken 149 times.
✓ Branch 54 taken 1269 times.
✓ Branch 55 taken 429 times.
1912 input = 1._real12
47 rank(5)
48
30/50
✗ Branch 0 not taken.
✓ Branch 1 taken 12 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 12 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 12 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 12 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 12 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 12 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 12 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 12 times.
✗ Branch 24 not taken.
✓ Branch 25 taken 12 times.
✗ Branch 27 not taken.
✓ Branch 28 taken 12 times.
✗ Branch 30 not taken.
✓ Branch 31 taken 12 times.
✗ Branch 33 not taken.
✓ Branch 34 taken 12 times.
✗ Branch 36 not taken.
✓ Branch 37 taken 12 times.
✗ Branch 39 not taken.
✓ Branch 40 taken 12 times.
✗ Branch 42 not taken.
✓ Branch 43 taken 12 times.
✗ Branch 45 not taken.
✓ Branch 46 taken 12 times.
✗ Branch 48 not taken.
✓ Branch 49 taken 12 times.
✗ Branch 51 not taken.
✓ Branch 52 taken 12 times.
✗ Branch 54 not taken.
✓ Branch 55 taken 12 times.
✗ Branch 57 not taken.
✓ Branch 58 taken 12 times.
✓ Branch 60 taken 53 times.
✓ Branch 61 taken 12 times.
✓ Branch 62 taken 149 times.
✓ Branch 63 taken 53 times.
✓ Branch 64 taken 429 times.
✓ Branch 65 taken 149 times.
✓ Branch 66 taken 1269 times.
✓ Branch 67 taken 429 times.
✓ Branch 68 taken 3789 times.
✓ Branch 69 taken 1269 times.
5701 input = 1._real12
49 rank(6)
50
36/60
✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✗ Branch 15 not taken.
✓ Branch 16 taken 1 times.
✗ Branch 18 not taken.
✓ Branch 19 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 24 not taken.
✓ Branch 25 taken 1 times.
✗ Branch 27 not taken.
✓ Branch 28 taken 1 times.
✗ Branch 30 not taken.
✓ Branch 31 taken 1 times.
✗ Branch 33 not taken.
✓ Branch 34 taken 1 times.
✗ Branch 36 not taken.
✓ Branch 37 taken 1 times.
✗ Branch 39 not taken.
✓ Branch 40 taken 1 times.
✗ Branch 42 not taken.
✓ Branch 43 taken 1 times.
✗ Branch 45 not taken.
✓ Branch 46 taken 1 times.
✗ Branch 48 not taken.
✓ Branch 49 taken 1 times.
✗ Branch 51 not taken.
✓ Branch 52 taken 1 times.
✗ Branch 54 not taken.
✓ Branch 55 taken 1 times.
✗ Branch 57 not taken.
✓ Branch 58 taken 1 times.
✗ Branch 60 not taken.
✓ Branch 61 taken 1 times.
✗ Branch 63 not taken.
✓ Branch 64 taken 1 times.
✗ Branch 66 not taken.
✓ Branch 67 taken 1 times.
✗ Branch 69 not taken.
✓ Branch 70 taken 1 times.
✓ Branch 72 taken 1 times.
✓ Branch 73 taken 1 times.
✓ Branch 74 taken 1 times.
✓ Branch 75 taken 1 times.
✓ Branch 76 taken 1 times.
✓ Branch 77 taken 1 times.
✓ Branch 78 taken 1 times.
✓ Branch 79 taken 1 times.
✓ Branch 80 taken 1 times.
✓ Branch 81 taken 1 times.
✓ Branch 82 taken 1 times.
✓ Branch 83 taken 1 times.
7 input = 1._real12
51 end select
52
53 57 end subroutine ones_initialise
54 !!!#############################################################################
55
56
16/18
✓ Branch 0 taken 56 times.
✓ Branch 1 taken 1 times.
✓ Branch 2 taken 56 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✓ Branch 5 taken 56 times.
✓ Branch 6 taken 19 times.
✓ Branch 7 taken 37 times.
✓ Branch 8 taken 11 times.
✓ Branch 9 taken 26 times.
✓ Branch 10 taken 1 times.
✓ Branch 11 taken 25 times.
✓ Branch 12 taken 12 times.
✓ Branch 13 taken 13 times.
✓ Branch 14 taken 12 times.
✓ Branch 15 taken 1 times.
✓ Branch 16 taken 1 times.
✗ Branch 17 not taken.
57 end module initialiser_ones
57 !!!#############################################################################
58