| 大哥你好,我把程序抠出来单独编译。为了与二次开发相吻合,取了相近的数值。
 计算就发现WX_T,ET1没有数值,我实验过很多次,怀疑原因为:当前面有一段随机数导致的。
 
 
 [Fortran] syntaxhighlighter_viewsource syntaxhighlighter_copycode 
!****************************************************************************
          subroutine init_random_seed()
       integer :: i,n,clock
       integer,dimension(:),allocatable :: seed
       call random_seed(size=n)
        allocate(seed(n))
        call system_clock(count=clock)
        seed=clock+37*(/(i-1,i=1,n)/)
        call random_seed(PUT=seed) 
        deallocate(seed)
      end subroutine
    program Console2
    implicit none
    REAL WB_X,hsv1,hsv2,rd     
        REAL ::ET1
        real ::ran         
       call init_random_seed()   
       CALL RANDOM_NUMBER(ran)
          WB_X=10000*(-1.0*(ran))**(1.0/5)  !WB_X即为服从Weibull分布 的一个抽样
          ET1=10000
          ET1=ET1*(-1.0*(ran))**(1.0/5)
          hsv1=ET1                             !hisv(5)即为服从Weibull分布
          hsv2=WB_X 
                                  !初始损伤服从webull分布
       print(*,*),ET1,WB_X,RAN,HSV1,hsv2 
       stop 
    end program Console2 |