9、继续matlab数值分析
1、matlab拉格朗日插值
function yi=Lagrange(x,y,xi)
%x为向量,全部的插值节点
%y为向量,插值节点处的函数值
%xi为标量或向量,被估计函数的自变量;
%yi为xi处的函数估计值
n=length(x);m=length(y);
%插值点与它的函数值应有相同的个数
if n~=m
error('The lengths of X and Y must be equal!');
return;
end
yi=zeros(size(xi));
for k=1:n
w=ones(size(xi));
for j=[1:k-1 k+1:n]
%输入的插值节点必须互异
if abs(x(k)-x(j))<eps
error('the DATA is error');
return;
end
w=(xi-x(j))/(x(k)-x(j)).*w;
end
yi=yi+w*y(k);
end
2、Matlab作两个模式类的距离(判别分析),
X1,X2为----类1,类2的训练样本“样品*变量”矩阵
X-为待判样品的“样品*变量”矩阵
COEFF---判别函数的系数向量
DIST-----待判样品的判别函数值向量
CLASS----待判样品的分类
function [coeff,dist,class]=dclass(x1,x2,x)
[N1,p]=size(x1);
[N2,p]=size(x2);
[N,p]=size(x);
meanx1=mean(x1);
meanx2=mean(x2);
covx1=(N1-1)*cov(x1);
covx2=(N2-1)*cov(x2);
mean=(meanx1+meanx2)./2;
cov=(covx1+covx2)./(N1+N2-2);
coeff=inv(cov)*(meanx1-meanx2)';
dist=[];
class=[];
for byk=1:N
w=(x(byk,:)-mean)*coeff;
if w>0
r=1;
else
r=2;
end
dist=[dist,w];
class=[class,r];
end
coeff=coeff';
3、好像是中心差分的差分表
function [Dy,dy,jdw,n]=diffext1(fun,x0,jdwc,max1)
h=1;j=1; n=1;jdW=1;xdW=1; x1=x0+h;x2=x0-h;
Dy(1,1)=(feval(fun,x1)- feval(fun,x2))/(2*h);
while((jdW>jdwc)&(j<max1))
j;x1=x0+2^(-j)*h;x2=x0-2^(-j)*h;
Dy(j+1,1)=(feval(fun,x1)-feval(fun,x2))/(2^(1-j)*h);
for k=1:j
k;Dy(j+1,k+1)= Dy(j+1,k)+( Dy(j+1,k)- Dy(j,k))/(4^k-1);
end
jdW=abs(Dy(j+1,j+1)-Dy(j+1,j)); j=j+1;
end
[n,n]=size(Dy);jdw=abs(Dy(n,n)-Dy(n,n-1));
dy= Dy(n,n);
function yi=Lagrange(x,y,xi)%x为向量,全部的插值节点%y为向量,插值节点处的函数值%xi为标量或向量,被估计函数的自变量;%yi为xi处的函数估计值n=length(x);m=length(y);%插值点与它的函数值应有相同的个数if n~=m error('The lengths of X and Y must be equal!'); return;endyi=zeros(size(xi));for k=1:n w=ones(size(xi)); for j=[1:k-1 k+1:n] %输入的插值节点必须互异 if abs(x(k)-x(j))<eps error('the DATA is error'); return; end w=(xi-x(j))/(x(k)-x(j)).*w; end yi=yi+w*y(k);end
9、继续matlab数值分析的更多相关文章
- MATLAB数值分析实验
1.用Newton迭代法求方程 的第一个正根. 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ newton.m: function x1=newto ...
- 【数值分析】误差的分析与减少及Matlab解线性方程的四种方法
1.误差的来源 模型误差:数学模型与实际问题之间的误差 观测误差:测量数据与实际数据的误差 方法误差:数学模型的精确解与数值方法得到的数值解之间的误差:例如 舍入误差:对数据进行四舍五入后产生的误差 ...
- 【书单】matlab 科学计算、数值分析以及数学物理问题
1. 数学计算 MATLAB数值计算 MATLAB之父 : 编程实践 2. 数学物理问题 高等应用数学问题的MATLAB求解(第3版)(豆瓣评价极好) 3. 模式识别
- 8、数值分析与matlab
1.今天要拷matlab代码了,而且是很恶心的算法,估计也没几个人能看得懂,就连我自己都看不懂. 我也不知道这样做的意义何在,可能只是证明我在这世上曾经学过那么那么难的东西吧 首先是一个matlab版 ...
- 数值分析 最小二乘 matlab
1. 已知函数在下列各点的值为 -1 -0.75 -0.5 0 0.25 0.5 0.75 1.00 0.8125 0.75 1.00 1.3125 1.75 2.3125 分别用一次.二次. ...
- MATLAB入门教程
MATLAB入门教程 1.MATLAB的基本知识 1-1.基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可.例如: ...
- MATLAB的crack安装小曲
MATLAB的crack安装小曲 本学期要学数学模型和数值分析,需要用MATLAB,便琢磨着装MATLAB.我同专业的同学会装MATLAB的crack,他是数学协会的理事长,平时爱吹牛,问他一个简单的 ...
- 【分享】Matlab R2015a 发布啦!
本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html Matlab和C#混合编程文章目录:http://www.cnblogs.com ...
- MATLAB新手教程
MATLAB新手教程 .MATLAB的基本知识 1-1.基本运算与函数 在MATLAB下进行基本数学运算,仅仅需将运算式直接打入提示号(>>)之後,并按入Enter键就可以.比如 ...
随机推荐
- id4用用户名和密码方式控制身份验证
建议看这个文章的时候先学习一下B站的id4教程以及文章中推荐的事例教程和官方例子: https://www.jianshu.com/p/259ef2256ec5
- Oracle 简单统计示例
有数据如下: eg1:现在需要统计所有男性人员数量,所有女性人员数量,sclassno=10000的男性人员的总年龄,年龄大于20的女性人员数量 ----sign( number )/*If numb ...
- idea中以maven工程的方式运行tomcat源码
0. 准备环境 idea+jdk8+tomcat源码 1.下载tomcat源码: http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/ ...
- 支付宝PC端接入PHP
引入支付宝接口 放入一个插件库中,方便管理 创建支付类 1.发起支付 public function init() { $order_id = $_REQUEST['order_id']; $orde ...
- HTMLtr 标签的 valign 属性
valign 属性规定表格行中内容的垂直对齐方式. <table width="100%" border="1"> <tr valign=&q ...
- css设置图片的高等于图片的高
<div class="box"> <img src="img/2222.jpg" /> </div> .box { pos ...
- linux 登录失败,修改root密码
开机按下 esc 重启系统后出现GRUB界面在引导装载程序菜单上,用上下方向键选择你忘记密码的那个系统键入“e” 来进入编辑模式. 接下来你可以看到如下图所示的画面,然后你再用上下键选择最新 ...
- UVA 11355 Cool Points( 极角计算 )
We have a circle of radius R and several line segments situated within the circumference of this cir ...
- Mac 电脑如何卸载 重装node
由于在日常开发中,部分node版本不支持,因此,我们需要对已安装的node进行卸载重装,步骤如下: 一.在终端依次输入以下命令 sudo npm uninstall npm -g sudo r ...
- docker 安装Filebeat
1.查询镜像 docker search filebeat 2.拉取镜像 我此处选择的是prima/filebeat docker pull prima/filebeat 3.创建配置文件 fileb ...