pload QAcommands

puts "========"
puts "OCC524"
puts "========"
puts ""


set LowerVector 1
set UpperVector 6
set InitialValueVector 5
set LowerRowMatrix 1
set UpperRowMatrix 6
set LowerColMatrix 1
set UpperColMatrix 6
set InitialValueMatrix 4

set info_result [OCC524 ${LowerVector} ${UpperVector} ${InitialValueVector} ${LowerRowMatrix} ${UpperRowMatrix} ${LowerColMatrix} ${UpperColMatrix} ${InitialValueMatrix}]

set ll [llength ${info_result}]

if {${ll} != 46} {
    puts "OCC524: Error"
} else {
    regexp {math_Vector of Length = ([-0-9.+eE]+)} ${info_result} full Vector1Length
    if {${Vector1Length} != [expr ${UpperVector} - ${LowerVector} + 1]} {
        puts "Vector1Length=${Vector1Length}"
        puts "OCC524: Error"
    } else {
	regexp {math_Vector\(1\) = ([-0-9.+eE]+)} ${info_result} full Vector1_1
	regexp {math_Vector\(2\) = ([-0-9.+eE]+)} ${info_result} full Vector1_2
	regexp {math_Vector\(3\) = ([-0-9.+eE]+)} ${info_result} full Vector1_3
	regexp {math_Vector\(4\) = ([-0-9.+eE]+)} ${info_result} full Vector1_4
	regexp {math_Vector\(5\) = ([-0-9.+eE]+)} ${info_result} full Vector1_5
	regexp {math_Vector\(6\) = ([-0-9.+eE]+)} ${info_result} full Vector1_6
	#regexp {math_Vector\(7\) = ([-0-9.+eE]+)} ${info_result} full Vector1_7
	#regexp {math_Vector\(8\) = ([-0-9.+eE]+)} ${info_result} full Vector1_8
	#regexp {math_Vector\(9\) = ([-0-9.+eE]+)} ${info_result} full Vector1_9
	
       if {${Vector1_1}!=120. || ${Vector1_2}!=120. || ${Vector1_3}!=120. || ${Vector1_4}!=120. || ${Vector1_5}!=120. || ${Vector1_6}!=120.} {
	    puts "Error : OCC524"
       } else {
       	    regexp -all {math_Vector\(1\) = ([-0-9.+eE]+)} ${info_result} full Vector2_1
    	    regexp -all {math_Vector\(2\) = ([-0-9.+eE]+)} ${info_result} full Vector2_2
	    regexp -all {math_Vector\(3\) = ([-0-9.+eE]+)} ${info_result} full Vector2_3
	    regexp -all {math_Vector\(4\) = ([-0-9.+eE]+)} ${info_result} full Vector2_4
	    regexp -all {math_Vector\(5\) = ([-0-9.+eE]+)} ${info_result} full Vector2_5
	    regexp -all {math_Vector\(6\) = ([-0-9.+eE]+)} ${info_result} full Vector2_6
	    #regexp -all {math_Vector\(7\) = ([-0-9.+eE]+)} ${info_result} full Vector2_7
	    #regexp -all {math_Vector\(8\) = ([-0-9.+eE]+)} ${info_result} full Vector2_8
    	    #regexp -all {math_Vector\(9\) = ([-0-9.+eE]+)} ${info_result} full Vector2_9
            if {${Vector2_1}!=120. || ${Vector2_2}!=125. || ${Vector2_3}!=120. || ${Vector2_4}!=120. || ${Vector2_5}!=120. || ${Vector2_6}!=120.} {
                puts "OCC524: Error"
            } else {
                puts "OCC524: OK"
            }
	}
    }
}

