|
[Fortran] 纯文本查看 复制代码 06 | integer i , j , k , m , n , maxx , x 1 , x 2 , y 1 , y 2 , z 1 , z 2 |
09 | real ( kind = 8 ) time 1 , time 2 , time 3 , time 4 , time 5 , time 6 |
14 | real , allocatable :: Ex ( : , : , : ) , Hy ( : , : , : ) , Hz ( : , : , : ) , indt ( : , : , : ) |
15 | maxx = 70 ; numi = 1.0 ; Num = 10 |
16 | time 1 = 0.0 ; time 2 = 0.0 ; time 3 = 0.0 ; time 4 = 0.0 ; time 5 = 0.0 ; time 6 = 0.0 |
17 | allocate ( Ex ( maxx , maxx , maxx ) , Hy ( maxx , maxx , maxx ) |
18 | + , Hz ( maxx , maxx , maxx ) , indt ( maxx , maxx , maxx ) ) |
26 | if ( x 1 <= i .and. i <= x 2 ) indt ( i , j , k ) = 1 |
27 | if ( y 1 <= j .and. j <= y 2 ) indt ( i , j , k ) = 1 |
28 | if ( z 1 <= k .and. k <= z 2 ) indt ( i , j , k ) = 1 |
36 | if ( indt ( i , j , k ) == 1 ) num = num +1 |
41 | print * , '筛选过后数目(A)/总数(B)' , 1.0 * num / ( maxx * ( maxx -1 ) * ( maxx -1 ) ) |
53 | Ex ( i , j , k ) = ( Hy ( i , j , k ) - Hy ( i , j , k +1 ) ) * 0.1254 |
54 | + + ( Hz ( i , j , k ) - Hz ( i , j +1 , k ) ) * 0.2948 |
62 | print * , '总迭代时间(B的耗时)' , time 2 - time 1 , 's' |
73 | if ( indt ( i , j , k ) .eq. 1 ) cycle |
74 | Ex ( i , j , k ) = ( Hy ( i , j , k ) - Hy ( i , j , k +1 ) ) * 0.1254 |
75 | + + ( Hz ( i , j , k ) - Hz ( i , j +1 , k ) ) * 0.2948 |
82 | print * , 'A的耗时' , time 4 - time 3 , 's' |
83 | print * , 'A/B的时间比' , ( time 4 - time 3 ) / ( time 2 - time 1 ) |
A与B操作的次数比 与耗时不成比例
|
|