330
330
a=rand(4,4);ac=a+i*rand(4,4);t=a*a';tc=ac*ac';
331
331
tc=triu(tc,1)+triu(tc,1)'+diag(real(diag(tc)));
335
if norm(u*h*u'-a,1) > 20*%eps then pause,end
336
if abs(norm(h-hess(a),1))> 10*%eps then pause,end
338
if norm(u*h*u'-ac,1) > 200*%eps then pause,end
339
if abs(norm(h-hess(ac),1))> 10*%eps then pause,end
341
if norm(u*h*u'-t,1) > 200*%eps then pause,end
342
if abs(norm(h-hess(t),1))> 10*%eps then pause,end
344
if norm(u*h*u'-tc,1) > 200*%eps then pause,end
345
if abs(norm(h-hess(tc),1))> 10*%eps then pause,end
348
if norm(u*s*u'-a,1 ) > 200*%eps then pause,end
349
if norm(s-schur(a),1 ) > 200*%eps then pause,end
350
if norm(spec(a)-spec(s),1)> 200*%eps then pause,end
352
if norm(u*s*u'-ac,1 ) > 200*%eps then pause,end
353
if norm(s-schur(ac),1 ) > 200*%eps then pause,end
354
if norm(spec(ac)-spec(s),1)> 200*%eps then pause,end
356
if norm(u*s*u'-t,1 ) > 200*%eps then pause,end
357
if norm(s-schur(t),1 ) > 200*%eps then pause,end
358
if norm(diag(s)-spec(t),1)> 200*%eps then pause,end
360
if norm(u*s*u'-tc,1 ) > 200*%eps then pause,end
361
if norm(s-schur(tc),1 ) > 200*%eps then pause,end
362
if norm(diag(s)-spec(tc),1) > 200*%eps then pause,end
332
tc=tc/max(abs(spec(tc))+1);
363
334
// fonctions matricielles
365
if norm(t-s*s,1) > 200*%eps then pause,end
336
if norm(t-s*s,1) > 500*%eps then pause,end
367
if norm(t-expm(s)) > 200*%eps then pause,end
338
if norm(t-expm(s)) > 500*%eps then pause,end
369
if norm(tc-s*s,1) > 220*%eps then pause,end
340
if norm(tc-s*s,1) > 500*%eps then pause,end
370
341
s=expm(tc);s=triu(s,1)+triu(s,1)'+diag(real(diag(s)));
371
if norm(logm(s)-tc,1)> 1.e-9 then pause,end
372
if norm(sinm(t)**2+cosm(t)**2-eye(),1) > 22*%eps then pause,end
373
// jpc --> 20 remplace par 25 pour gc-win32
374
if norm(sinm(tc)**2+cosm(tc)**2-eye(),1) > 25*%eps then pause,end
342
if norm(logm(s)-tc,1)> 500*%eps then pause,end
343
if norm(sinm(t)**2+cosm(t)**2-eye(),1) > 50*%eps then pause,end
344
if norm(sinm(tc)**2+cosm(tc)**2-eye(),1) > 50*%eps then pause,end
376
346
p=rand(5,1);pc=p+i*rand(5,1);x=poly(0,'x');
377
347
if norm(sort(p )-sort(real(roots(poly(p,'x'))))) > 1000*%eps then pause,end
378
if norm(sort(imag(pc))-sort(real(roots(poly(imag(pc),'x'))))) > 1000*%eps then pause,end
348
if norm(sort(imag(pc))-sort(real(roots(poly(imag(pc),'x'))))) > 10000*%eps then pause,end
380
350
if norm(t^(-1)-inv(t),1) > 200*%eps then pause,end
381
351
if norm(tc**(-1)-inv(tc),1) > 200*%eps then pause,end