|
◆ densityindex()
subroutine simple_stat::densityindex |
( |
real, dimension(:), intent(out) |
di, |
|
|
real, dimension(:), intent(out) |
nlimbins, |
|
|
integer, dimension(:), intent(out) |
occu, |
|
|
real, dimension(:), intent(in) |
rnum, |
|
|
real, dimension(:), intent(in) |
limbins |
|
) |
| |
|
private |
- Parametri
-
Definizione alla linea 1290 del file simple_stat.f90.
1291 real, intent(out) :: di(:)
1292 real, intent(out) :: nlimbins(:)
1293 integer, intent(out) :: occu(:)
1294 REAL, DIMENSION(:), INTENT(IN) :: rnum
1295 real, intent(in) :: limbins(:)
1297 real :: nnum(size(rnum))
1298 integer :: i,k,sample_count
1299 logical :: sample_mask(size(rnum))
1305 nlimbins(1)=limbins(1)
1307 do i=2, size(limbins)
1308 if (limbins(i) /= limbins(k)) then
1310 nlimbins(k)= limbins(i)
1317 sample_mask = (rnum /= rmiss)
1318 sample_count = count(sample_mask)
1319 IF (sample_count == 0) RETURN
1320 nnum(1:sample_count) = pack(rnum, mask=sample_mask)
1323 occu(i)=count(nnum>=nlimbins(i) .and. nnum<nlimbins(i+1))
1324 di(i) = float(occu(i)) / (nlimbins(i+1) - nlimbins(i))
1328 occu(i)=count(nnum>=nlimbins(i) .and. nnum<=nlimbins(i+1))
1329 di(i) = float(occu(i)) / (nlimbins(i+1) - nlimbins(i))
|