Various subroutines
Provide for a free unit, from here John Burkardt website
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=I4), | intent(out) | :: | iunit |
free unit to use |
Print a progress bar on the terminal
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=I4), | intent(in) | :: | val |
actual position |
||
integer(kind=I4), | intent(in) | :: | max_val |
maximum value reached |
||
logical(kind=I4), | intent(in) | :: | init |
progress bar initialization |
Generic subroutine for real or complex arrays that shift the center to the corners
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(*), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
class(*), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |
Subroutine to transform an array of complexes so that the center is in the corners
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=R8), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
complex(kind=R8), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |
Subroutine to transform an array of reals so that the center is in the corners
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
real(kind=R8), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |
Generic subroutine for real or complex arrays that shift the corners to the center
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(*), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
class(*), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |
Function to transform an acf complex array so that the acf maximum is in the center
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=R8), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
complex(kind=R8), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |
Function to transform an acf real array so that the acf maximum is in the center
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(in), | dimension(1:long, 1:larg) | :: | tab_in |
2D array to transform |
|
real(kind=R8), | intent(out), | dimension(1:long, 1:larg) | :: | tab_out |
transformed 2D array |
|
integer(kind=I4), | intent(in) | :: | long |
2D array length |
||
integer(kind=I4), | intent(in) | :: | larg |
2D array width |