廣瀬俊哉
HPにアップロードされていた、Windows版Scilabの丸めの制御のためのDLLをダウンロードしScilabに組み込んだ.
そのとき、インストールした時に作業フォルダはインストールされたフォルダになると思っていたので"C:\Program Files\Scilab2.5\"の階層下にファイルを置いて試行錯誤したが、どこにおいてもファイルがないとエラーが出た。そこでショートカットのプロパティを確認したところ作業フォルダが空だった。"C:\"を作業フォルダとして認識していたようだ。適当にフォルダを作成して作業フォルダとした。
Verified Matrix Equation Solver(linear.sci)のファイルをダウンロードして実行したがこれもエラーが出た .
原因はdown();であったのでdown;とup;に変更すると無事実行出来た。
'linear.sci'
function [x,error2]=lin(A,b)R=inv(A);x=R*b;[N,M]=size(A);down;Gd=abs(R*A-eye(N,N));rd=A*x-b;up;Gu=abs(R*A-eye(N,N));ru=A*x-b;center=(ru+rd)/2;radius=center-rd;ru=max(rd,ru);Gu=max(Gd,Gu);R_norm=norm(R,"inf");G_norm=norm(Gu,"inf");Rru=abs(R*center+abs(R)*radius);down;Rrd=abs(R*center-abs(R)*radius);D=1-G_norm;if D>0 thenup;Rru=max(Rrd,Rru);Rr_norm=norm(Rru,"inf");err=Rr_norm/D;kappa=Gu*ones(N,1);error2=Rru+(err*kappa);nerror=max(error2);elseprintf("D<=0");end;endfunction
Startup execution:loading initial environment-->stacksize(3000000);-->getf('round.sci');-->getf('linear.sci');Warning :redefining function: lin-->A=rand(5,5)A =! .2922267 .5015342 .9184708 .2806498 .6856896 !! .5664249 .4368588 .0437334 .1280058 .1531217 !! .4826472 .2693125 .4818509 .7783129 .6970851 !! .3321719 .6325745 .2639556 .2119030 .8415518 !! .5935095 .4051954 .4148104 .1121355 .4062025 !-->b=rand(5,1)b =! .4094825 !! .8784126 !! .1138360 !! .1998338 !! .5618661 !-->[x,e]=lin(A,b)e =1.0E-14 *! .0659714 !! .1026611 !! .0220756 !! .0501196 !! .0970575 !x =! .4382183 !! 1.8217721 !! .3122720 !! .3967165 !! - 1.5027332 !
last modified 2000/12/2
©Shin'ichi OISHI
URI: http://www.oishi.info.waseda.ac.jp/~oishi/FAQ/hiro.htm