program getwgt_prb ! !******************************************************************************* ! !! GETWGT_PRB tests the GETWGT routine. ! integer, parameter :: acid_num = 20 ! integer aacnts(acid_num) integer acid_i character ( len = 8 ) date integer event_i integer num real pseudocount(acid_num) character ( len = 10 ) time ! call date_and_time ( date, time ) write ( *, * ) ' ' write ( *, * ) 'GETWGT_PRB' write ( *, * ) ' Test GETWGT, which updates the' write ( *, * ) ' estimated weights of a Dirichlet mixture.' write ( *, * ) ' ' write ( *, * ) ' Today''s date: ', date write ( *, * ) ' Today''s time: ', time ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! do num = 1, 10 write ( *, * ) ' ' write ( *, * ) num, ' #8' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(8) = num call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) end do ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! write ( *, * ) ' ' write ( *, * ) ' 50 #18' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(18) = 50 call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! write ( *, * ) ' ' write ( *, * ) ' 50 #8' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(8) = 50 call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! write ( *, * ) ' ' write ( *, * ) ' 50 #18' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(18) = 50 call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! write ( *, * ) ' ' write ( *, * ) ' 500 #18' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(18) = 500 call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) ! ! Now observe a number of events, reporting each and updating ! the pseudocount vector. ! write ( *, * ) ' ' write ( *, * ) ' 49 #20' write ( *, * ) ' ' aacnts(1:acid_num) = 0 aacnts(20) = 49 call getwgt ( aacnts, pseudocount ) call rvec_print ( acid_num, pseudocount, 'Pseudocounts:' ) write ( *, * ) ' ' write ( *, * ) 'GETWGT_PRB' write ( *, * ) ' Normal end of GETWGT tests.' stop end