[Maxima-users] Fw: Re: Fw: Re: Maxima初心者です。よろしくお願い致します。

Back to archive index

市川 雄二 ichik****@gmail*****
2013年 2月 25日 (月) 00:20:37 JST


数値係数がある場合、記号処理(solve)で数値解求めるのは難しいところがあるようです。
allroots/realrootsを使いましょうとのことでした。

	solve(y1-y3=0, V);
の代わりに
	allroots(y1-y3=0), float;
とするのが一番近いかと思います。

念のため回答メールを添付します。

ー
市川雄二

On 2013/02/24, at 21:34, <cat_fairc****@yahoo*****> wrote:

> 
> 市川雄二様
> お世話になっております
> >本家で返事があったらフォワードしますね。
> ご指導の程、よろしくお願い致します。
> 
> --- 市川 雄二 <ichik****@gmail*****> wrote:
> 
> From: 市川 雄二 <ichik****@gmail*****>
> Subject: Re: [Maxima-users] Fw: Re: Maxima初心者です。よろしくお願い致します。
> To: "maxim****@lists*****" <maxim****@lists*****>
> Date: Sun, 24 Feb 2013 21:13:24 +0900
> 
> そうでしたか。よかった。
> メーラの(送信済みメール含めて)スレッド並べる機能と受信メールの区別がついていなくて、よくわからなくなりました。
> 本家で返事があったらフォワードしますね。
>> 市川雄二
> 
> On 2013/02/24, at 21:03, <cat_fairc****@yahoo*****> wrote:
> 
>> 
>> 市川雄二様
>> お世話になっております。
>> ># Cc:だとこちらに届かないんでしょうか?
>> 届いております。英語でご質問して頂きまして有難うございます。
>> 自分では、英語で質問したことが無くできませんので、大変、感謝しております。
>>  
>> 
>> --- 市川 雄二 <ichik****@gmail*****> wrote:
>> 
>> From: 市川 雄二 <ichik****@gmail*****>
>> Subject: Re: [Maxima-users] Maxima初心者です。よろしくお願い致します。
>> To: "maxim****@lists*****" <maxim****@lists*****>
>> Date: Sun, 24 Feb 2013 19:14:40 +0900
>> 
>> 変ですね…。
>> 
>> 複素数を整理するために、
>> solve(expand(y1-y3=0),V),float, rectform;
>> としてみました。
>> http://maxima.sourceforge.jp/maxima_10.html#index-rectform
>> 
>> 結果は以下の通りで、小さな虚数が入ってしまっています。
>> 
>> [V=6.912159733474255*10^-11*%i+23407.68626044911,V=-3.456079866737127*10^-11*%i-17935.32928314814,V=
>> 76717.31990058154-3.092281986027956*10^-11*%i]
>> 
>> 残念ながらどういう不具合か私にはわからないです。
>> # 本家のメーリングリストで聞いてみるといいかもしれません。
>> 
>> solveの代わりにrealrootsを使って**浮動小数点評価すると**、それっぽい結果が得られました。
>> realroots(y1-y3=0), float;
>> => [V=-17935.32928314805,V=23407.686260432,V=76717.3199006021]
>> 
>> http://maxima.sourceforge.jp/maxima_20.html#index-realroots-1
>> 
>> 
>> Maximaでは;の代わりに$で式を区切ると、その式の出力が抑制されます。
>>>> 市川雄二
>> 
>> On 2013/02/24, at 18:03, cat_fairc****@yahoo***** wrote:
>> 
>>> 
>>> 市川雄二様
>>>  
>>>  お世話になります。
>>> 仰る通りにやると出来ました。有難うございました。
>>> 下記は最後に、Vを求めております。solve(y1-y3=0,V)
>>> Mathematicaでは、V=23407.7が求まりました。
>>> 同様に、maximaでも、V=23407.7を求めるにはどうしたら良いでしょうか?
>>> 下記の通りに評価すると、解がすべて虚数になるように思えます。
>>> V=23407.7は多分、正しいと思います。下記で
>>> /*V:23407.7;*/
>>> /*float(y1-y3);*/;
>>> の/*  */を、外して計算すれば、y1-y3が、ほぼ0になるからです。
>>> ご教示頂きましたら幸いです。
>>>  
>>> 追伸
>>> Mathematicaでは、評価後にA:239; Z:92;とか、変数を表示させないように出来たのですが、(例えば、A=239; Z=92;とすると表示しません。A=239 とすると表示します。)
>>> Maximaでは、すべて表示してしまうのでしょうか?すべて表示すると、煩わしいです。
>>>   
>>>  
>>>  
>>> A:239;
>>> Z:92;
>>> y3:4.8;
>>> as:17.944;
>>> ks:1.7826;
>>> N1:A-Z;
>>> I1:(N1 - Z)/(N1 + Z);
>>> y0: Z^2/A;
>>> float(y0);
>>> r : float(1.5*10^(-13)*A^(1/3));
>>> e : 1;
>>> Ea : 3*(Z*e)^2/(5*r);
>>> kill(x);
>>> kill(Es0);
>>> kill(at);
>>> kill(V);
>>> /*V:23407.7;*/
>>> at: -((7*(-1 + x))/(1 + 2*x));
>>> yt:Es0*((2/5)*(1-x)*at^2-(4/105)*(1+2*x)*at^3);
>>> y0 : fullratsimp(yt);
>>> M : Z*e*V;
>>> s1 : M/(y0*10^6);
>>> r0:r;
>>> k1:r*at;
>>>  
>>> x:0.01965*Z^2/A*1/(1 - ks*I1^2);
>>> Es0:as*(1-ks*I1^2)*A^(2/3);
>>> kill(at);
>>> at:-((7*(-1 + x))/(1 + 2*x)) - s1;
>>> y:Es0*((2/5)*(1-x)*at^2-(4/105)*(1+2*x)*at^3);
>>> y1:fullratsimp(''y), infeval=true;
>>> solve(y1-y3=0,V);
>>> /*float(y1-y3);*/;
>>> 
>>>  
>>>> 
>>>> 初めまして、Maxima初心者です。よろしくお願い致します。
>>>> Mathematicaを少し使用しており、Maximaに乗り換え中です。
>>>> Mathematicaの下記は、Maximaではどうなるのでしょうか?
>>>> よろしくお願い致します。
>>>> 
>>>> 1.プリント表示コマンド
>>>> Print["V(電圧)=", V, "V"];
>>>> 
>>>> 2.式を無効にするコマンド
>>>> (* y=x+1;*)
>>>> 
>>>> 3.下記を実行すると、最後の計算式で、xやEs0に、数値が入りません。
>>>> なぜでしょうか?xやEs0は前で定義しております。
>>>> A:239;
>>>> Z:92;
>>>> y3:4.8;
>>>> as:17.944;
>>>> ks:1.7826;
>>>> N1:A-Z;
>>>> I1:(N1 - Z)/(N1 + Z);
>>>> y0: Z^2/A;
>>>> float(y0);
>>>> r : float(1.5*10^(-13)*A^(1/3));
>>>> e : 1;
>>>> Ea : 3*(Z*e)^2/(5*r);
>>>> kill(x);
>>>> kill(Es0);
>>>> kill(at);
>>>> kill(V);
>>>> at: -((7*(-1 + x))/(1 + 2*x));
>>>> yt:Es0*((2/5)*(1-x)*at^2-(4/105)*(1+2*x)*at^3);
>>>> y0 : fullratsimp(yt);
>>>> M : Z*e*V;
>>>> s1 : M/(y0*10^6);
>>>> r0:r;
>>>> k1:r*at;
>>>> 
>>>> x:0.01965*Z^2/A*1/(1 - ks*I1^2);
>>>> Es0:as*(1-ks*I1^2)*A^(2/3);
>>>> kill(at);
>>>> at:-((7*(-1 + x))/(1 + 2*x)) - s1;
>>>> y:Es0*((2/5)*(1-x)*at^2-(4/105)*(1+2*x)*at^3);
>>>> 
>>>> y1:fullratsimp(y);.
>>>> _______________________________________________
>>>> Maxima-users mailing list
>>>> Maxim****@lists*****
>>>> http://lists.sourceforge.jp/mailman/listinfo/maxima-users
>>> 
>>> _______________________________________________
>>> Maxima-users mailing list
>>> Maxim****@lists*****
>>> http://lists.sourceforge.jp/mailman/listinfo/maxima-users
>> 
>> _______________________________________________
>> Maxima-users mailing list
>> Maxim****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/maxima-users
> 
> _______________________________________________
> Maxima-users mailing list
> Maxim****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/maxima-users

-------------- next part --------------
HTMLの添付ファイルを保管しました...
Télécharger 
-------------- next part --------------
添付メールを保管しました...
送信者: Jaime Villate <villa****@fe*****>
件名:   Re: [Maxima] Solving 3rd order equation by solve.
日付:   Sun, 24 Feb 2013 12:49:08 +0000
サイズ: 2803 バイト
URL:    http://lists.sourceforge.jp/mailman/archives/maxima-users/attachments/20130225/042a6d59/attachment-0002.eml 
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://lists.sourceforge.jp/mailman/archives/maxima-users/attachments/20130225/042a6d59/attachment-0004.htm 
-------------- next part --------------
添付メールを保管しました...
送信者: Stavros Macrakis <macra****@alum*****>
件名:   Re: [Maxima] Solving 3rd order equation by solve.
日付:   Sun, 24 Feb 2013 09:59:20 -0500
サイズ: 12268 バイト
URL:    http://lists.sourceforge.jp/mailman/archives/maxima-users/attachments/20130225/042a6d59/attachment-0003.eml 
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://lists.sourceforge.jp/mailman/archives/maxima-users/attachments/20130225/042a6d59/attachment-0005.htm 



Maxima-users メーリングリストの案内
Back to archive index