Trident batch application
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical(kind=I4), | private | :: | GLOBAL_OMP | ||||
integer(kind=I4), | private | :: | JOB | ||||
integer(kind=I4), | private | :: | LINE_READ | ||||
integer(kind=I4), | private | :: | NB_ITER_DEB | ||||
integer(kind=I4), | private | :: | NB_ITER_FIN | ||||
integer(kind=I4), | private | :: | NB_THREADS | ||||
character(len=512), | private | :: | NOM_SUR | ||||
logical(kind=I4), | private | :: | OUT_CMD | ||||
integer(kind=I4), | private | :: | SAVE_LINE_READ | ||||
character(len=512), | private | :: | SAV_NOM_SUR | ||||
character(len=1), | private | :: | SEP | ||||
integer(kind=I4), | private | :: | SPY | ||||
integer(kind=I4), | private | :: | STA | ||||
logical(kind=I4), | private | :: | WITH_SAMPLING |
The function analyses reads, in the Job file, the analysis to perform. The analysis is then performed.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(in), | dimension(:,:) | :: | tab |
array of the surface |
|
type(SCALE_SURF), | intent(in) | :: | scal |
SCALE_SURF object of the input surface |
||
type(SCALE_SURF), | intent(in) | :: | scal_samp |
SCALE_SURF object of a sample |
||
type(tborne), | intent(in), | dimension(:) | :: | tab_bounds |
array of the sample bounds |
Crop the surface contained in tab to the dimensions specified in the job file and update the object scal
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | allocatable, dimension(:,:) | :: | tab |
array containing the surface |
|
type(SCALE_SURF), | intent(inout) | :: | scal |
SCALE_SURF object |
End of the Job file - some finalizations.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tborne), | intent(inout), | allocatable, dimension(:) | :: | tab_bounds |
array to deallocate |
The function ft_gauss performs a Gaussian filter on the surface tab. It:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | dimension(:,:) | :: | tab |
array of the surface |
|
type(SCALE_SURF), | intent(inout) | :: | scal |
SCALE_SURF object of the input surface |
The function lssq_img subtracts a least square 2D polynomial from tab. It:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | dimension(:,:) | :: | tab |
array of the surface |
|
type(SCALE_SURF), | intent(inout) | :: | scal |
SCALE_SURF object of the input surface |
Define the number of concurrent threads (1 or all available threads)
The principle of the present function is to read a user-made batch file. The batch file, or job file, contains a sequence of keywords.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=I4), | intent(in) | :: | irep |
repetition number when the program is ran multiple times |
||
character(len=014), | intent(in) | :: | time |
execution time |
||
character(len=512), | intent(in) | :: | job_file |
job file with macros to execute |
||
integer(kind=I4), | intent(in) | :: | spy_unit |
spy file unit |
Read a surface file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(out), | allocatable, dimension(:,:) | :: | tab |
array for the surface file |
|
type(SCALE_SURF), | intent(out) | :: | scal |
SCALE_SURF object |
The function sampling allow for the user to sample the surface.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(SCALE_SURF), | intent(in) | :: | scal |
SCALE_SURF object of the input surface |
||
type(SCALE_SURF), | intent(out) | :: | scal_samp |
SCALE_SURF object of a sample |
||
integer(kind=I4), | intent(out) | :: | nb_samp |
number of samples |
||
type(tborne), | intent(out), | allocatable, dimension(:) | :: | tab_bounds |
array of the sample bounds |
Save the surface in the file specified in the job file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | dimension(:,:) | :: | tab |
array containing the surface |
|
type(SCALE_SURF), | intent(inout) | :: | scal |
SCALE_SURF object |
Smooth out a surface according median_filter procedure
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | dimension(:,:) | :: | tab |
array containing the surface |
|
type(SCALE_SURF), | intent(in) | :: | scal |
SCALE_SURF object |
Start sample loop
Some initializations: ‘GLOBAL_OMP’ (tasks parallelization), ‘OUT_CMD’ (verbose mode), etc.