Go to the documentation of this file.
19 integer,
intent(in) :: xsize, ysize
20 integer(integer_onebyte),
dimension(xsize,ysize),
intent(inout) :: CSR_results
21 integer,
intent(out) :: status
23 integer :: i, j, tempmask(3,3), lo_i, hi_i, lo_j, hi_j, sum_tempmask, main_tempmask, ii, jj
24 integer,
dimension(:,:),
allocatable :: mask_solution
29 #if MAS_INST | EMAS_INST
69 integer,
intent(in) :: xsize, ysize
70 type(
processflag),
dimension(xsize,ysize),
intent(in) :: cloudmask
71 integer(integer_onebyte),
dimension(xsize,ysize),
intent(inout) :: CSR_results
72 integer,
intent(out) :: status
74 integer :: i, j, tempmask(3,3), lo_i, hi_i, lo_j, hi_j, sum_tempmask, main_tempmask, ii, jj
75 integer,
dimension(:,:),
allocatable :: mask_solution
87 allocate(mask_solution(xsize, ysize))
94 else if (i==xsize)
then
102 if (i==1 .or. i==xsize)
then
108 main_tempmask = sum_tempmask
115 else if (j==ysize)
then
123 if (j==1 .or. j==ysize)
then
124 if (sum_tempmask == 6)
then
136 if (cloudmask(i,j)%cloudobserved)
then
140 if (cloudmask(ii,jj)%cloudobserved .and. csr_results(ii,jj) == 0)
then
141 tempmask( ii-lo_i+1, jj-lo_j+1) = 1
146 if (sum(tempmask) < sum_tempmask) &
147 mask_solution(i,j) = 1
151 sum_tempmask = main_tempmask
159 if (mask_solution(i,j) == 1 .and. csr_results(i,j) == 0)
then
167 deallocate(mask_solution)
subroutine remove_edge_scenes_ext(CSR_results, xsize, ysize, status)
integer(integer_onebyte), dimension(:,:), allocatable restoral_pos
subroutine remove_edge_scenes(cloudmask, CSR_results, xsize, ysize, status)