1

(MATLAB 2010 A 学生版)

質問: "solve" コマンドを使用して、9 つのシンボリック変数で 9 つのシンボリック方程式を解こうとしています:

問題:

N=2

V = sym(zeros(N+2+1)); % 5*5 symbolic matrix

syms D x; %D is diffusion constant

%Creating 3*3 non-zero symbolic entries
for row = 0:N
    for col = 0:N
        V(row+1, col+1) = sym(sprintf('V%d%d', row+1, col+1));
    end
end

count=1;
for m=0:N
    for n=0:N
        % Diffusion PDE written in Differential Transform domain
        eqn(count) = (m+1)*V(m+1+1,n+1)-D*(n+1)*(n+2)*V(m+1,n+2+1);  
        count=count+1;
    end
end

%length(eqn) is 9

eqn=eqn(1:7);      %as last 2 terms are [0 0] in eqn

PDE の初期条件は、Dirac Delta func ("delta(x)") によって与えられます。したがって、2 つの条件 (x=0 の場合と x が 0 以外の場合) で構成されます。

したがって、x=0 では "1" となり、次のようになります。

eqn(length(eqn)+1)=V(1,1)-V(2,1)+V(3,1)-1; % ini.condn

そして、x が 0 でない場合、それは "0" であり、次のようになります: (意味がありますか?)

eqn(length(eqn)+1)=(V(1,1)-V(2,1)+V(3,1))+(V(1,2)-V(2,2)+V(3,2))*x + (V(1,3)-     
V(2,3)+V(3,3))*x^2; %ini. condn

S=solve(eqn,'V11' ,'V12' ,'V13' ,'V21' ,'V22' ,'V23' ,'V31' ,'V32' ,'V33');

答え: S.V11、S.V12、S.V13、S.V21 は「z」の関数です。残りは0

ソリューションに「z」が表示されます。

  1. ソリューションの「z」は何ですか? これのソースは何ですか?

  2. これを回避して意味のある解決策を得るにはどうすればよいですか?

前もって感謝します

4

1 に答える 1

0

このzパラメーターは、z代入する値が何であれ、解のセットが方程式に対して有効であることを意味します。

9つの未知数を見つけるための9つの方程式があります。ただし、6番目の方程式2*V33=0は次の方程式を-2*D*V33=0冗長にします...したがって、実際には8つの独立した方程式しかないため、追加のパラメーターがありますz。PDEの詳細について、適切に設定されていない理由を説明することはできませんが、一意の解を期待する場合は、基本的にゼロ以外の変数を含む別の方程式が必要です。

于 2013-01-14T03:07:58.490 に答える