|
◆ qcspainit()
subroutine qcspainit |
( |
type(qcspatype), intent(inout) |
qcspa, |
|
|
type (vol7d), intent(in), target |
v7d, |
|
|
character(len=*), dimension(:), intent(in) |
var, |
|
|
type(datetime), intent(in), optional |
timei, |
|
|
type(datetime), intent(in), optional |
timef, |
|
|
type(geo_coord), intent(inout), optional |
coordmin, |
|
|
type(geo_coord), intent(inout), optional |
coordmax, |
|
|
integer, dimension(:,:,:,:,:), intent(in), optional, target |
data_id_in, |
|
|
character(len=*), intent(in), optional |
extremepath, |
|
|
character(len=*), intent(in), optional |
spatialpath, |
|
|
character(len=*), intent(in), optional |
dsne, |
|
|
character(len=*), intent(in), optional |
usere, |
|
|
character(len=*), intent(in), optional |
passworde, |
|
|
character(len=*), intent(in), optional |
dsnspa, |
|
|
character(len=*), intent(in), optional |
userspa, |
|
|
character(len=*), intent(in), optional |
passwordspa, |
|
|
logical, intent(in), optional |
height2level, |
|
|
character(len=*), optional |
operation, |
|
|
character(len=*), intent(in), optional |
categoryappend |
|
) |
| |
Init del controllo di qualità spaziale.
Effettua la lettura dei file e altre operazioni di inizializzazione.
- Parametri
-
[in,out] | qcspa | Oggetto per il controllo spaziale |
[in] | v7d | Il volume Vol7d da controllare |
[in] | var | variabili da importare secondo la tabella B locale o relativi alias |
[in,out] | coordmin | coordinate minime e massime che definiscono il rettangolo di estrazione per l'importazione |
[in,out] | coordmax | coordinate minime e massime che definiscono il rettangolo di estrazione per l'importazione |
[in] | timei | estremi temporali (inizio e fine) dell'estrazione per l'importazione |
[in] | timef | estremi temporali (inizio e fine) dell'estrazione per l'importazione |
[in] | data_id_in | Indici dei dati in DB |
[in] | extremepath | file con il volume del extreme |
[in] | spatialpath | file with spatial ndi |
[in] | height2level | use conventional level starting from station height |
[in] | categoryappend | appennde questo suffisso al namespace category di log4fortran |
| operation | Operation to execute ("gradient"/"run") |
Definizione alla linea 361 del file modqcspa.F90.
371 status = triangles_compute(qcspa%co,qcspa%tri) 375 if (status /= 0) then 376 call l4f_category_log(qcspa%category,l4f_error, "contng error status="/ 380 end subroutine qcspatri 384 subroutine qcspaalloc(qcspa) 387 type(qcspatype), intent(in out) :: qcspa 408 if ( associated(qcspa%data_id_in)) then 409 sh=shape(qcspa%data_id_in) 410 allocate (qcspa%data_id_out(sh(1),sh(2),sh(3),sh(4),sh(5)),stat=istatt 412 call l4f_category_log(qcspa%category,l4f_error, "allocate error") 413 call raise_error( "allocate error") 415 qcspa%data_id_out=imiss 419 if ( associated(qcspa%v7d%ana)) then 420 qcspa%ndp= size(qcspa%v7d%ana) 421 qcspa%tri = triangles_new(qcspa%ndp) 422 allocate(qcspa%co(qcspa%ndp)) 425 end subroutine qcspaalloc 429 subroutine qcspadealloc(qcspa) 432 type(qcspatype), intent(in out) :: qcspa 442 if ( associated(qcspa%data_id_out)) then 443 deallocate (qcspa%data_id_out) 444 nullify (qcspa%data_id_out) 447 if ( associated(qcspa%co)) deallocate(qcspa%co) 449 end subroutine qcspadealloc 455 subroutine qcspadelete(qcspa) 457 type(qcspatype), intent(in out) :: qcspa 469 end subroutine qcspadelete 475 SUBROUTINE quaconspa (qcspa,timetollerance,noborder,battrinv,battrcli,battrout,& 476 anamask,timemask,levelmask,timerangemask,varmask,networkmask) 479 type(qcspatype), intent(in out) :: qcspa 480 type(timedelta), intent(in) :: timetollerance 481 logical, intent(in), optional :: noborder 485 logical , intent(in), optional :: anamask(:) 486 logical , intent(in), optional :: timemask(:) 487 logical , intent(in), optional :: levelmask(:) 488 logical , intent(in), optional :: timerangemask(:) 489 logical , intent(in), optional :: varmask(:) 490 logical , intent(in), optional :: networkmask(:) 494 integer :: indbattrinv,indbattrcli,indbattrout 495 logical :: anamaskl(size(qcspa%v7d%ana)), timemaskl(size(qcspa%v7d%time)) 496 size(qcspa%v7d%timerange)), varmaskl( size(qcspa%v7d%dativar%r size 498 integer :: indana , indtime ,indlevel ,indtimerange ,inddativarr, indnetwork 499 integer :: indcana , indctime ,indclevel ,indctimerange ,indcdativarr, indcnetwork 500 real :: datoqui,datola,datila(size(qcspa%v7d%time)),climaquii, climaquif
|