libsim  Versione7.2.6

◆ vol7d_display()

subroutine, private vol7d_class::vol7d_display ( type(vol7d), intent(in)  this)
private

stampa a video una sintesi del contenuto

Parametri
[in]thisoggetto da visualizzare

Definizione alla linea 696 del file vol7d_class.F90.

696 REAL :: rdat
698 DOUBLE PRECISION :: ddat
700 INTEGER :: idat
702 INTEGER(kind=int_b) :: bdat
704 CHARACTER(len=*) :: cdat
705 
706 print *, to_char_dat(this,idat,rdat,ddat,bdat,cdat)
707 
708 end SUBROUTINE dat_display
709 
711 SUBROUTINE dat_vect_display(this,idat,rdat,ddat,bdat,cdat)
712 
713 TYPE(vol7d_var),intent(in) :: this(:)
715 REAL :: rdat(:)
717 DOUBLE PRECISION :: ddat(:)
719 INTEGER :: idat(:)
721 INTEGER(kind=int_b) :: bdat(:)
723 CHARACTER(len=*):: cdat(:)
724 
725 integer :: i
726 
727 do i =1,size(this)
728  call display(this(i),idat(i),rdat(i),ddat(i),bdat(i),cdat(i))
729 end do
730 
731 end SUBROUTINE dat_vect_display
732 
733 
734 FUNCTION to_char_dat(this,idat,rdat,ddat,bdat,cdat)
735 #ifdef HAVE_DBALLE
736 USE dballef
737 #endif
738 TYPE(vol7d_var),INTENT(in) :: this
740 REAL :: rdat
742 DOUBLE PRECISION :: ddat
744 INTEGER :: idat
746 INTEGER(kind=int_b) :: bdat
748 CHARACTER(len=*) :: cdat
749 CHARACTER(len=80) :: to_char_dat
750 
751 CHARACTER(len=LEN(to_char_dat)) :: to_char_tmp
752 
753 
754 #ifdef HAVE_DBALLE
755 INTEGER :: handle, ier
756 
757 handle = 0
758 to_char_dat="VALUE: "
759 
760 if (c_e(idat)) to_char_dat=trim(to_char_dat)//" ;int> "//trim(to_char(idat))
761 if (c_e(rdat)) to_char_dat=trim(to_char_dat)//" ;real> "//trim(to_char(rdat))
762 if (c_e(ddat)) to_char_dat=trim(to_char_dat)//" ;double> "//trim(to_char(ddat))
763 if (c_e(bdat)) to_char_dat=trim(to_char_dat)//" ;byte> "//trim(to_char(bdat))
764 
765 if ( c_e(cdat))then
766  ier = idba_messaggi(handle,"/dev/null", "w", "BUFR")
767  ier = idba_spiegab(handle,this%btable,cdat,to_char_tmp)
768  ier = idba_fatto(handle)
769  to_char_dat=trim(to_char_dat)//" ;char> "//trim(to_char_tmp)
770 endif
771 
772 #else
773 
774 to_char_dat="VALUE: "
775 if (c_e(idat)) to_char_dat=trim(to_char_dat)//" ;int> "//trim(to_char(idat))
776 if (c_e(rdat)) to_char_dat=trim(to_char_dat)//" ;real> "//trim(to_char(rdat))
777 if (c_e(ddat)) to_char_dat=trim(to_char_dat)//" ;double> "//trim(to_char(ddat))
778 if (c_e(bdat)) to_char_dat=trim(to_char_dat)//" ;byte> "//trim(to_char(bdat))
779 if (c_e(cdat)) to_char_dat=trim(to_char_dat)//" ;char> "//trim(cdat)
780 
781 #endif
782 
783 END FUNCTION to_char_dat
784 
785 
788 FUNCTION vol7d_c_e(this) RESULT(c_e)
789 TYPE(vol7d), INTENT(in) :: this
790 
791 LOGICAL :: c_e
792 
793 c_e = ASSOCIATED(this%ana) .OR. ASSOCIATED(this%time) .OR. &
794  ASSOCIATED(this%level) .OR. ASSOCIATED(this%timerange) .OR. &
795  ASSOCIATED(this%network) .OR. &
796  ASSOCIATED(this%anavar%r) .OR. ASSOCIATED(this%anavar%d) .OR. &
797  ASSOCIATED(this%anavar%i) .OR. ASSOCIATED(this%anavar%b) .OR. &
798  ASSOCIATED(this%anavar%c) .OR. &
799  ASSOCIATED(this%anaattr%r) .OR. ASSOCIATED(this%anaattr%d) .OR. &
800  ASSOCIATED(this%anaattr%i) .OR. ASSOCIATED(this%anaattr%b) .OR. &
801  ASSOCIATED(this%anaattr%c) .OR. &
802  ASSOCIATED(this%dativar%r) .OR. ASSOCIATED(this%dativar%d) .OR. &
803  ASSOCIATED(this%dativar%i) .OR. ASSOCIATED(this%dativar%b) .OR. &
804  ASSOCIATED(this%dativar%c) .OR. &
805  ASSOCIATED(this%datiattr%r) .OR. ASSOCIATED(this%datiattr%d) .OR. &
806  ASSOCIATED(this%datiattr%i) .OR. ASSOCIATED(this%datiattr%b) .OR. &
807  ASSOCIATED(this%datiattr%c)
808 
809 END FUNCTION vol7d_c_e
810 
811 
850 SUBROUTINE vol7d_alloc(this, nana, ntime, nlevel, ntimerange, nnetwork, &
851  nanavarr, nanavard, nanavari, nanavarb, nanavarc, &
852  nanaattrr, nanaattrd, nanaattri, nanaattrb, nanaattrc, &
853  nanavarattrr, nanavarattrd, nanavarattri, nanavarattrb, nanavarattrc, &
854  ndativarr, ndativard, ndativari, ndativarb, ndativarc, &
855  ndatiattrr, ndatiattrd, ndatiattri, ndatiattrb, ndatiattrc, &
856  ndativarattrr, ndativarattrd, ndativarattri, ndativarattrb, ndativarattrc, &
857  ini)
858 TYPE(vol7d),INTENT(inout) :: this
859 INTEGER,INTENT(in),OPTIONAL :: nana
860 INTEGER,INTENT(in),OPTIONAL :: ntime
861 INTEGER,INTENT(in),OPTIONAL :: nlevel
862 INTEGER,INTENT(in),OPTIONAL :: ntimerange
863 INTEGER,INTENT(in),OPTIONAL :: nnetwork
865 INTEGER,INTENT(in),OPTIONAL :: &
866  nanavarr, nanavard, nanavari, nanavarb, nanavarc, &
867  nanaattrr, nanaattrd, nanaattri, nanaattrb, nanaattrc, &
868  nanavarattrr, nanavarattrd, nanavarattri, nanavarattrb, nanavarattrc, &
869  ndativarr, ndativard, ndativari, ndativarb, ndativarc, &
870  ndatiattrr, ndatiattrd, ndatiattri, ndatiattrb, ndatiattrc, &
871  ndativarattrr, ndativarattrd, ndativarattri, ndativarattrb, ndativarattrc
872 LOGICAL,INTENT(in),OPTIONAL :: ini
873 
874 INTEGER :: i
875 LOGICAL :: linit
876 
877 IF (PRESENT(ini)) THEN
878  linit = ini
879 ELSE
880  linit = .false.
881 ENDIF
882 
883 ! Dimensioni principali
884 IF (PRESENT(nana)) THEN
885  IF (nana >= 0) THEN
886  IF (ASSOCIATED(this%ana)) DEALLOCATE(this%ana)

Generated with Doxygen.