⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 taylorexpansiondemo.html

📁 一个关于数据聚类和模式识别的程序,在生物化学,化学中因该都可以用到.希望对大家有用,谢谢支持
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"                "http://www.w3.org/TR/REC-html40/loose.dtd"><html><head>  <title>Description of taylorExpansionDemo</title>  <meta name="keywords" content="taylorExpansionDemo">  <meta name="description" content="Animation for">  <meta http-equiv="Content-Type" content="text/html; charset=big5">  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">  <meta name="robots" content="index, follow">  <link type="text/css" rel="stylesheet" href="../m2html.css"></head><body><a name="_top"></a><div><a href="../index.html">Home</a> &gt;  <a href="index.html">dcpr</a> &gt; taylorExpansionDemo.m</div><!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td><td align="right"><a href="index.html">Index for dcpr&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>--><h1>taylorExpansionDemo</h1><h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>Animation for</strong></div><h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="box"><strong>This is a script file. </strong></div><h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre class="comment"> Animation for     1. Polynomial fitting    2. First, second, and third order Taylor expansion of a curve Roger Jang, June 3, 1996</pre></div><!-- crossreference --><h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>This function calls:<ul style="list-style-image:url(../matlabicon.gif)"></ul>This function is called by:<ul style="list-style-image:url(../matlabicon.gif)"></ul><!-- crossreference --><h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2><div class="fragment"><pre>0001 <span class="comment">% Animation for</span>0002 <span class="comment">%    1. Polynomial fitting</span>0003 <span class="comment">%    2. First, second, and third order Taylor expansion of a curve</span>0004 <span class="comment">%</span>0005 <span class="comment">% Roger Jang, June 3, 1996</span>0006 0007 x = linspace(1, 10, 10)';0008 y = [10 7 5 4 3.5 3.2 2 1 2 4]';0009 order = 9;0010 coef = polyfit(x, y, order);0011 xx = linspace(1, 10)';0012 yy = polyval(coef, xx);0013 limit = [min(x) max(x) min(y)-1 max(y)+1];0014 0015 d_coef = [length(coef)-1:-1:1].*coef(1:length(coef)-1);0016 dd_coef = [length(d_coef)-1:-1:1].*d_coef(1:length(d_coef)-1);0017 ddd_coef = [length(dd_coef)-1:-1:1].*dd_coef(1:length(dd_coef)-1);0018 0019 figure(<span class="string">'name'</span>, <span class="string">'Polynomial Fitting and Taylor Expansion'</span>, <span class="string">'NumberTitle'</span>, <span class="string">'off'</span>);0020 <span class="comment">%colordef(gcf, 'black');</span>0021 h = plot(x, y, <span class="string">'o'</span>, xx, yy, <span class="string">'-'</span>);0022 set(h, <span class="string">'linewidth'</span>, 2, <span class="string">'erase'</span>, <span class="string">'xor'</span>);0023 fitH = h(1);0024 curveH = h(2);0025 axis(limit);0026 title(<span class="string">'Click and drag circles to change the curve.'</span>);0027 xlabel(<span class="string">'Click and drag to see first, second, and third order approximation'</span>); 0028 0029 verticalH = line([nan nan], [min(y)-1 max(y)+1], <span class="string">'erase'</span>, <span class="string">'xor'</span>, <span class="string">'color'</span>, <span class="string">'w'</span>);0030 circleH = line(nan, nan, <span class="string">'erase'</span>, <span class="string">'xor'</span>, <span class="string">'color'</span>, <span class="string">'w'</span>, <span class="string">'marker'</span>, <span class="string">'o'</span>);0031 firstH = line(xx, nan*xx, <span class="string">'erase'</span>, <span class="string">'xor'</span>, <span class="string">'color'</span>, <span class="string">'g'</span>, <span class="string">'linestyle'</span>, <span class="string">':'</span>);0032 secondH = line(xx, nan*xx, <span class="string">'erase'</span>, <span class="string">'xor'</span>, <span class="string">'color'</span>, <span class="string">'c'</span>, <span class="string">'linestyle'</span>, <span class="string">'-.'</span>);0033 thirdH = line(xx, nan*xx, <span class="string">'erase'</span>, <span class="string">'xor'</span>, <span class="string">'color'</span>, <span class="string">'r'</span>, <span class="string">'linestyle'</span>, <span class="string">'--'</span>);0034 AxisH = gca; FigH = gcf;0035 curr_info = get(AxisH, <span class="string">'CurrentPoint'</span>);0036 current_x = curr_info(1,1);0037 0038 <span class="comment">% The following is for animation</span>0039 <span class="comment">% action1a, action2a, and action3a are for polynomial fitting</span>0040 <span class="comment">% action1b, action2b, and action3b are for Taylor expansion</span>0041 0042 <span class="comment">% action when button is first pushed down</span>0043 action1a = [<span class="string">'curr_info=get(AxisH, ''currentPoint'');'</span>, <span class="keyword">...</span>0044     <span class="string">'start_x=curr_info(1,1);'</span>, <span class="keyword">...</span>0045     <span class="string">'start_y=curr_info(1,2);'</span>, <span class="keyword">...</span>0046     <span class="string">'prev_y = start_y;'</span>, <span class="keyword">...</span>0047     <span class="string">'[junk, index] = min(abs(start_x-x));'</span>];0048 action1b = [<span class="string">'curr_info=get(AxisH, ''currentPoint'');'</span>, <span class="keyword">...</span>0049     <span class="string">'curr_x=curr_info(1,1);'</span>, <span class="keyword">...</span>0050     <span class="string">'first=polyval(d_coef,curr_x)*(xx-curr_x)+polyval(coef,curr_x);'</span>, <span class="keyword">...</span>0051     <span class="string">'second=0.5*polyval(dd_coef, curr_x)*(xx-curr_x).^2+first;'</span>, <span class="keyword">...</span>0052     <span class="string">'third=1/6*polyval(ddd_coef, curr_x)*(xx-curr_x).^3+second;'</span>, <span class="keyword">...</span>0053     <span class="string">'set(circleH, ''xdata'', curr_x, ''ydata'',polyval(coef, curr_x));'</span>, <span class="keyword">...</span>0054     <span class="string">'set(verticalH, ''xdata'', [curr_x curr_x]);'</span>, <span class="keyword">...</span>0055     <span class="string">'set(firstH, ''ydata'', first);'</span>, <span class="keyword">...</span>0056     <span class="string">'set(secondH, ''ydata'', second);'</span>, <span class="keyword">...</span>0057     <span class="string">'set(thirdH, ''ydata'', third);'</span>];0058 action1 = [<span class="string">'if gco==curveH,'</span> action1a, <span class="string">'else '</span>, action1b, <span class="string">'end'</span>];0059 <span class="comment">% actions after the mouse is pushed down</span>0060 action2a = [<span class="string">'curr_info=get(AxisH, ''currentPoint'');'</span>, <span class="keyword">...</span>0061     <span class="string">'curr_x=curr_info(1,1);'</span>, <span class="keyword">...</span>0062     <span class="string">'curr_y=curr_info(1,2);'</span>, <span class="keyword">...</span>0063     <span class="string">'y(index) = y(index)+curr_y-prev_y;'</span>, <span class="keyword">...</span>0064     <span class="string">'prev_y = curr_y;'</span>, <span class="keyword">...</span>0065     <span class="string">'set(fitH, ''ydata'', y);'</span>, <span class="keyword">...</span>0066     <span class="string">'coef = polyfit(x, y, order);'</span>, <span class="keyword">...</span>0067     <span class="string">'yy = polyval(coef, xx);'</span>, <span class="keyword">...</span>0068     <span class="string">'set(curveH, ''ydata'', yy);'</span>, <span class="keyword">...</span>0069     <span class="string">'d_coef = [length(coef)-1:-1:1].*coef(1:length(coef)-1);'</span>, <span class="keyword">...</span>0070     <span class="string">'dd_coef = [length(d_coef)-1:-1:1].*d_coef(1:length(d_coef)-1);'</span>, <span class="keyword">...</span>0071     <span class="string">'ddd_coef = [length(dd_coef)-1:-1:1].*dd_coef(1:length(dd_coef)-1);'</span>];0072 action2b = action1b;0073 action2 = [<span class="string">'if gco==curveH,'</span> action2a, <span class="string">'else '</span>, action2b, <span class="string">'end'</span>];0074 <span class="comment">% action when button is released</span>0075 action3a = [];0076 action3b = [<span class="string">'set(fitH, ''visible'', ''on'');'</span>, <span class="keyword">...</span>0077     <span class="string">'set(circleH, ''xdata'', nan, ''ydata'', nan);'</span>, <span class="keyword">...</span>0078     <span class="string">'set(verticalH, ''xdata'', [nan nan]);'</span>, <span class="keyword">...</span>0079     <span class="string">'set(firstH, ''ydata'', nan*xx);'</span>, <span class="keyword">...</span>0080     <span class="string">'set(secondH, ''ydata'', nan*xx);'</span>, <span class="keyword">...</span>0081     <span class="string">'set(thirdH, ''ydata'', nan*xx);'</span>];0082 action3 = [<span class="string">'if gco==curveH,'</span> action3a, <span class="string">'else '</span>, action3b, <span class="string">'end'</span>];0083 0084 <span class="comment">% temporary storage for the recall in the down_action</span>0085 set(AxisH,<span class="string">'UserData'</span>,action2);0086 0087 <span class="comment">% set action when the mouse is pushed down</span>0088 down_action=[ <span class="keyword">...</span>0089     <span class="string">'set(FigH,''WindowButtonMotionFcn'',get(AxisH,''UserData''));'</span> <span class="keyword">...</span>0090     action1];0091 set(FigH,<span class="string">'WindowButtonDownFcn'</span>,down_action);0092 0093 <span class="comment">% set action when the mouse is released</span>0094 up_action=[ <span class="keyword">...</span>0095     <span class="string">'set(FigH,''WindowButtonMotionFcn'','' '');'</span>, action3];0096 set(FigH,<span class="string">'WindowButtonUpFcn'</span>,up_action);</pre></div><hr><address>Generated on Thu 30-Oct-2008 12:53:56 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -