SCILAB&SCICOSについて教えてください

このエントリーをはてなブックマークに追加
247名無しさん@5周年
>>246
-->A=-1 ; B=1 ; C=1; D=0;
-->sys=syslin("c",A,B,C,D);
-->bode(sys)
-->ss2tf(sys)
ans =

    1
  -----
  1 + s

-->[aa,bb,cc,dd]=abcd(sys)
dd =

0.
cc =

1.
bb =

1.
aa =

- 1.


248名無しさん@5周年:2007/07/25(水) 00:03:34
>>247
もう少し言葉も含めて詳しくおねがいします。
249名無しさん@5周年:2007/07/25(水) 02:51:05
>>248
->A=-1 ; B=1 ; C=1; D=0;
-->sys=syslin("c",A,B,C,D);
-->bode(sys)
250名無しさん@5周年:2007/07/25(水) 08:17:52
-->A=-1 ; B=1 ; C=1; D=0;
-->sys=syslin("c",A,B,C,D);
-->ssprint(sys)
.
x = |-1 |x + | 1 |u

y = | 1 |x

-->bode(sys)
251名無しさん@5周年:2007/07/26(木) 18:51:07
状態空間の場合、evansによるグラフ表示はどうやったらできるかわかる人いますか?
252名無しさん@5周年:2007/07/26(木) 20:11:14
>>251
なんで、まずやってみないかなー?

A=-1 ; B=1 ; C=1; D=0;
sys=syslin("c",A,B,C,D);
ssprint(sys)
evans(sys)

253名無しさん@5周年:2007/08/02(木) 18:10:29
エディタにプログラムを書いて保存するとき、.sciで保存するのと.sceで保存するのとで
何か違いはありますか?自分で実際にやってみた限りでは特に違いがわかりません。
254名無しさん@5周年:2007/08/21(火) 16:47:31
むだ時間要素を扱う方法ってある?
255名無しさん@5周年:2007/08/21(火) 22:26:44
>>254
パーデ近似。

s=%s;
Ts=1/100;
G =(12-6*s*Ts+s*s*Ts*Ts)/(12+6*s*Ts+s*s*Ts*Ts)
sys=syslin("c",G)
bode(sys)

サンプリング周期の1/4くらいまでならOK?
256名無しさん@5周年:2007/09/06(木) 18:01:50
Scilabの起動後にrandで乱数を出すと同じ数が出ます
これを避けて違う乱数を発生させることは出来ますか?
257名無しさん@5周年:2007/09/06(木) 20:42:20
>>256
dt=getdate() ; dt(10)
が毎回変わる処理系ならば(dt(10)はOSのミリセコンド値)
dt=getdate() ; rand("seed" , dt(10) ) っていうのはどうだろう

258256:2007/09/06(木) 20:59:33
>>257
これ良いですね、一気に解決しました。
ありがとうございました(・∀・)
259名無しさん@5周年:2007/09/07(金) 20:03:42
>>257
rand("seed", sum(getdate()))

の方が周期が長いかもw
260256:2007/09/08(土) 08:34:05
>>259
ヒントありがとうございます、自分でも考えてみました。
rand('seed')は8桁のようなのでNも8桁になるようにしてみました。
これだと1時間周期_秒単位で乱数設定ができると思います。

dt=getdate();
N=60*60*1000*dt(7)+60*1000*dt(8)+1000*dt(9)+dt(10);
rand('seed',N)
261256:2007/09/08(土) 08:43:11
>>260
24時間周期の間違いでした
N=0〜89,999,999?
262名無しさん@5周年:2007/09/15(土) 11:38:10
scilab のデータを c# の DLL に渡したり、c# DLL のデータを scilab が受け取ったりできる?
263名無しさん@5周年:2007/09/20(木) 19:17:56
Scilabってdec2bin, bin2decないんだね(´;ω;`)
264名無しさん@5周年:2007/09/20(木) 20:34:07
>>263
片方向ならある。


-->base2dec("1000",2)
ans =

8.

-->base2dec("1000",10)
ans =

1000.

-->base2dec("1000",16)
ans =

4096.
265263:2007/09/20(木) 23:16:23
>>264
片方向でもありがたいです、どうも(`・ω・´)
でもdec2hexがあるのになんでdec2binが無いんだろうね・・・
来月のV5.0に期待しましょうか
266名無しさん@5周年:2007/09/28(金) 00:11:44
179とかで出てきてるint2dを使って
試しに半径1の半球の体積=2.0944を求めてみようということで、

clear
N=700;

for i=1:N

x0(i)=cos((i-1)*2*%pi/N);
y0(i)=sin((i-1)*2*%pi/N);

x1(i)=cos(i*2*%pi/N);
y1(i)=sin(i*2*%pi/N);

x2(i)=0;
y2(i)=0;

end

X=[x0';x1';x2'];
Y=[y0';y1';y2'];

deff('z2=g(x,y)',['z2=sqrt(1-x.^2-y.^2)'])
int2d(X,Y,g)

というようなソースを書いてみましたが、さらにNを
増やしていって(積分領域を真円に近づけていっても)
結果は2.0918程度となって厳密解と差が出てしまいます。

どなたか、原因がお分かりの方がいらっしゃったら御教授願いたいです。
267名無しさん@5周年:2007/09/30(日) 12:33:59
Scicosで変数を使うことって出来ないですか?
結果のグラフを見ながら何度もゲインKを変更するんですけど
そのKが何箇所かにあって、その全部のブロックを変更するのって
やたらと時間がかかってしまって面倒なんです。
もしご存知の方がいたら教えてください、お願いします。
268名無しさん@5周年:2007/09/30(日) 17:01:48
269ぶるま:2007/10/06(土) 01:04:36
パーデ近似でexp(-Ls)を表現するとどうなりますか?
むだ時間が必要です。
お願いします。
270名無しさん@5周年:2007/10/06(土) 03:31:31
一次
-(s*L-2)/(s*L+2)

二次
(s^2*L^2-6*s*L+12)/(s^2*L^2+6*s*L+12)
271名無しさん@5周年:2007/10/06(土) 11:08:07
>>269
>>255
過去スレとは言わないが、せめてこのスレくらい検索してみるくらいの余裕はないのかね?
272ぶるま:2007/10/06(土) 17:18:39
>>271
ちゃんと見てますよ。
だから、ここで再質問したんです。
255で回答されてますが、この式をどう使っていいかわからないから、質問しました。
273ぶるま:2007/10/06(土) 17:21:04
>>270
ありがとうございます。
一次と二次で形が違うんですね。
>>255だけでは、わかりませんでした。

Lをむだ時間として、exp(-Ls)の替わりに、これを使えばいいのですね?
274名無しさん@5周年:2007/10/06(土) 18:25:51
>>273
横レスでアレだが、

>>255だけでは、わかりませんでした。

が理解できない。 >>255を実行すればこれが無駄時間を表すことは
一目瞭然だろ。
275ぶるま:2007/10/06(土) 22:14:01
現に、わからなかったから、質問したのですが?
わかっていたら、質問していませんね。
それがわからない方が、どうかしています。
276ぶるま:2007/10/06(土) 22:15:02
しかも、一次と二次とで形が違ってるし。
277名無しさん@5周年:2007/10/07(日) 11:18:34
>>276
>しかも、一次と二次とで形が違ってるし。
278名無しさん@5周年:2007/10/07(日) 11:26:56
そんなに自分がアホって自慢しなくても....
279267:2007/10/09(火) 19:04:21
>>268
ありがとうございます!!
おかげ様で作業がかなりやり易くなりました。