漫步岛 发表于 2006-7-1 22:56

用三次样条插值法解非线性方程组,求高手matlab编程

<P ><FONT face="Times New Roman">2</FONT>.已知数据点<v:shapetype><FONT face="Times New Roman"> <v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path connecttype="rect" gradientshapeok="t" extrusionok="f"></v:path><lock aspectratio="t" v:ext="edit"></lock></FONT></v:shapetype>,作三次插值样条函数,然后求x~<FONT face="Times New Roman">处y~=s(x~)的值<v:shape> <v:imagedata></v:imagedata></v:shape></FONT></P>
<P >边界条件:</P>
<P ><FONT face="Times New Roman">1)</FONT>自然三次样条:</P>
<P ><FONT face="Times New Roman">2)</FONT>给出两端点的一阶导数<v:shape><FONT face="Times New Roman"> <v:imagedata></v:imagedata></FONT></v:shape></P>
<P >说明:基本方程组用<I ><FONT face="Times New Roman">m</FONT></I>表示法;方程组求解用追赶法。</P>
<P >Example:<p></p></P>
<P >给定数据表</P>
<TABLEcellSpacing=0 cellPadding=0 border=0>

<TR >
<TDvAlign=top width=68>
<P ><I ><FONT face="Times New Roman">x<SUB>i</SUB></FONT></I></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">0</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">2</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">4</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">6</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">10</FONT></P></TD></TR>
<TR >
<TDvAlign=top width=68>
<P ><I ><FONT face="Times New Roman">y<SUB>i</SUB></FONT></I></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">0</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">16</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">36</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">54</FONT></P></TD>
<TDvAlign=top width=68>
<P ><FONT face="Times New Roman">82</FONT></P></TD></TR></TABLE>
<P ><FONT face="Times New Roman">a.      </FONT>确定自然三次样条函数,并求<FONT face="Times New Roman"><I >S</I>(4.65)</FONT>;</P>
<P ><FONT face="Times New Roman">b.   </FONT>确定满足边界条件s'(0)=8和 s'(0)的三次样条函数,并求<FONT face="Times New Roman"><I >S</I>(3)</FONT>和<FONT face="Times New Roman"><I >S</I>(8).</FONT></P>

xj2070 发表于 2006-7-4 15:02

这样的问题,可以先将系数矩阵A生成,再用
x=A\b得到结果

matlab的方程求解自动会兼顾到效率


Sample TextSample Text
页: [1]
查看完整版本: 用三次样条插值法解非线性方程组,求高手matlab编程