testing some corner cases
This commit is contained in:
parent
62174a8978
commit
25c9bb1cd7
|
@ -1206,10 +1206,23 @@ subroutine unitTest
|
||||||
real :: A,B
|
real :: A,B
|
||||||
integer :: i
|
integer :: i
|
||||||
|
|
||||||
do i=1,5
|
do i=1,10
|
||||||
|
|
||||||
msg = ''
|
msg = ''
|
||||||
|
|
||||||
|
if(i==1) then
|
||||||
|
qu = om2qu(math_I3)
|
||||||
|
elseif(i==2) then
|
||||||
|
qu = eu2qu([0.0_pReal,0.0_pReal,0.0_pReal])
|
||||||
|
elseif(i==3) then
|
||||||
|
qu = eu2qu([2.0_pReal*PI,PI,2.0_pReal*PI])
|
||||||
|
elseif(i==4) then
|
||||||
|
qu = [0.0_pReal,0.0_pReal,1.0_pReal,0.0_pReal]
|
||||||
|
elseif(i==5) then
|
||||||
|
qu = ro2qu([1.0_pReal,0.0_pReal,0.0_pReal,ieee_value(1.0_pReal, IEEE_positive_inf)])
|
||||||
|
elseif(i==6) then
|
||||||
|
qu = ax2qu([1.0_pReal,0.0_pReal,0.0_pReal,0.0_pReal])
|
||||||
|
else
|
||||||
call random_number(r)
|
call random_number(r)
|
||||||
A = sqrt(r(3))
|
A = sqrt(r(3))
|
||||||
B = sqrt(1-0_pReal -r(3))
|
B = sqrt(1-0_pReal -r(3))
|
||||||
|
@ -1218,6 +1231,9 @@ subroutine unitTest
|
||||||
cos(2.0_pReal*PI*r(2))*B,&
|
cos(2.0_pReal*PI*r(2))*B,&
|
||||||
sin(2.0_pReal*PI*r(1))*A]
|
sin(2.0_pReal*PI*r(1))*A]
|
||||||
if(qu(1)<0.0_pReal) qu = qu * (-1.0_pReal)
|
if(qu(1)<0.0_pReal) qu = qu * (-1.0_pReal)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(dNeq0(norm2(om2qu(qu2om(qu))-qu),1.0e-12_pReal)) msg = trim(msg)//'om2qu/qu2om,'
|
if(dNeq0(norm2(om2qu(qu2om(qu))-qu),1.0e-12_pReal)) msg = trim(msg)//'om2qu/qu2om,'
|
||||||
if(dNeq0(norm2(eu2qu(qu2eu(qu))-qu),1.0e-12_pReal)) msg = trim(msg)//'eu2qu/qu2eu,'
|
if(dNeq0(norm2(eu2qu(qu2eu(qu))-qu),1.0e-12_pReal)) msg = trim(msg)//'eu2qu/qu2eu,'
|
||||||
|
|
Loading…
Reference in New Issue