2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674 INTEGER LDA, M, N
2675 CHARACTER*1 UPLO
2676 CHARACTER*2 TYPE
2677
2678 DOUBLE PRECISION AA( LDA, * ), AS( LDA, * )
2679
2680 INTEGER I, IBEG, IEND, J
2681 LOGICAL UPPER
2682
2683 upper = uplo.EQ.'U'
2684 IF( type.EQ.'GE' )THEN
2685 DO 20 j = 1, n
2686 DO 10 i = m + 1, lda
2687 IF( aa( i, j ).NE.as( i, j ) )
2688 $ GO TO 70
2689 10 CONTINUE
2690 20 CONTINUE
2691 ELSE IF( type.EQ.'SY' )THEN
2692 DO 50 j = 1, n
2693 IF( upper )THEN
2694 ibeg = 1
2695 iend = j
2696 ELSE
2697 ibeg = j
2698 iend = n
2699 END IF
2700 DO 30 i = 1, ibeg - 1
2701 IF( aa( i, j ).NE.as( i, j ) )
2702 $ GO TO 70
2703 30 CONTINUE
2704 DO 40 i = iend + 1, lda
2705 IF( aa( i, j ).NE.as( i, j ) )
2706 $ GO TO 70
2707 40 CONTINUE
2708 50 CONTINUE
2709 END IF
2710
2712 GO TO 80
2713 70 CONTINUE
2715 80 RETURN
2716
2717
2718
logical function lderes(type, uplo, m, n, aa, as, lda)