matlab调整矩阵精度,如何让矩阵的输出精度达到小树点后面8位呢
下面是我的代码,可是矩阵的值比较大,输出的时候。是这样的
1.0e+009 *
NaN
1.5026
1.1131
NaN
0.0015
0.0025
0.0005
0.0399
可是我想要精确一些。
如何让矩阵的输出精度达到小树点后面8位呢?
另外还有个问题,我的函数明明输出的是两个值,为什么最后只输出一个
va,另外sigmava却没有结果出来呢。请各位高手指点?
以下是我的代码。
function[Va,SigmaVa]=CalV(E,SigmaE,D,r,T)
%a=zeros(8,8);
D=[
1096853709
1422513664
1080412570
1099330560
821720
676976
196840
37877619
];
a=D;
%b=zeros(8,8);
E=[
5482334
112522064
57679892
4537800
751520
1882103.375
285241.125
3833159
];
b=E;
%c=zeros(8,8);
SigmaE=[
0.401835787
0.543863954
0.609681884
0.741317746
0.917986928
0.931843334
1.004589468
1.02883818
];
c=SigmaE;
%计算Va'SigmaVa
key=0;
r=0.0225;
T=1;
PI=4*atan(1);
Va=b;%va以E为迭代的初值
newVa=Va;
SigmaVa=c; %SigmaVa以SigmaE为迭代的初值
for k=1:10 %迭代SigmaVa
for j=1:10 %迭代Va
oldVa=newVa;
% Va=(E+D*exp(-r,T)*Nd2)/Ndl;
% SigmaVa=E*SigmaE/(E+D*exp(-r,T)*Nd2);
%t1=log(oldVa/a);
d1=(log(oldVa./a)+(r+(SigmaVa.^2)/2)*T)./(SigmaVa.*(T^(1/2)));
d2=d1-(SigmaVa*(T^(1/2)));
Nd1=normcdf(d1,0,1);
Nd2=normcdf(d2,0,1);
fV=oldVa.*Nd1-a.*exp(-r*T).*Nd2-b;
temp111=exp(-d1.^2/2)./((2*PI*T)^0.5.*SigmaVa)
dfV=Nd1+temp111-a.*exp(-r*T).*exp(-d2.^2/2)./((2*PI*T)^0.5.*oldVa.*SigmaVa);
if dfV==0
dfV
pause;
end
dV=-fV./dfV;
newVa=oldVa+dV; %前后两次的值认为非常接近,则迭代成功
newVa
if newVa==0
oldVa
newVa
pause;
end
if(dV/newVa)<1e-7 & (dV/newVa)>-1e-7
break;
end
end
Va=newVa;
d1=(log(Va./a)+(r+(SigmaVa.^2)/2)*T)./(SigmaVa.*(T^(1/2)));
d2=d1-(SigmaVa*(T^(1/2)));
Nd1=normcdf(d1,0,1);
Nd2=normcdf(d2,0,1); %方程右边与左边的比值
diff=(Va.*Nd1-a.*exp(-r*T).*Nd2)./b;
if diff<1-1e-5 | diff>1+1e-5
assert('迭代出现错误'); %迭代出现错误
else
key=key+1;
end
newSigmaVa=b.*c./(b+a.*exp(-r*T).*Nd2);
if((SigmaVa-newSigmaVa)./newSigmaVa)<1e-5 & ((SigmaVa-newSigmaVa)./newSigmaVa)>(-1e-5)
break;
key=key+1;
else
SigmaVa=newSigmaVa;
end
end
if key==2
%else
% Va=一l:
% SigmaVa=-1:
end
请各位高手指点?将不胜感激。
matlab调整矩阵精度,如何让矩阵的输出精度达到小树点后面8位呢相关推荐
- matlab 调整矩阵形状,matlab对矩阵/向量的常用操作(拼接矩阵、向量逆序、改变矩阵形状、求行阶梯形矩阵、提取矩阵的一部分等)...
几乎所有变量在matlab中都可以视为矩阵(1 x 1元素,1 x n向量,m x n矩阵等),matlab中对矩阵/向量的操作非常多,个人认为对矩阵的操作是体现matlab功底的地方:灵活搭配使用这 ...
- 应用MATLAB求解线性代数题目(二)——矩阵
目录 矩阵的秩 矩阵A与B的和与差 矩阵的数乘 矩阵A与B的乘积 转置矩阵 伴随矩阵 可逆矩阵: 简化行阶梯(行最简)矩阵 矩阵A的n次方 矩阵的秩 先看一下矩阵的秩的定义,摘自百度百科. 方阵(行数 ...
- Matlab学习笔记——矩阵求幂和矩阵指数
写在这里的初衷,一是备忘,二是希望得到高人指点,三是希望能遇到志同道合的朋友. 目录 矩阵求幂和矩阵指数 矩阵求幂和矩阵指数 利用MATLAB对矩阵求幂可以很容易地得到结果,例如: 矩阵求幂 元素对元 ...
- matlab 当已知两个矩阵满足分别一定条件时_程序继续执行,MATLAB程序设计基础
2.1常量与变量 2.1.1 特殊常量 变量名 功 能 说 明 ANS(ans) 缺省变量名,以应答最近一次操作运算结果 i或j 虚数单位 Pi 圆周率 NaN Not-a-number,表示不定值 ...
- matlab 求向量的交集_MATLAB矩阵列向量单位化的最快代码
向量的单位化是指,将向量的每个元素除以向量的模(2-范数),使得向量的模(2-范数)变为1. 在机器学习.压缩感知.稀疏表现等方面,经常需要对矩阵的每个列向量进行单位化.下面对各种列向量单位化的MAT ...
- 遥感分类误差矩阵_遥感卫星影像之分类精度评价
原标题:遥感卫星影像之分类精度评价 对一帧遥感影像进行专题分类后需要进行分类精度的评价,而进行评价精度的因子有混淆矩阵.总体分类精度.Kappa系数.错分误差.漏分误差.每一类的制图精度和拥护精度. ...
- matlab求零空间,【线性代数】矩阵的零空间
矩阵A的零空间就Ax=0的解的集合. 零空间的求法:对矩阵A进行消元求得主变量和自由变量:给自由变量赋值得到特解:对特解进行线性组合得到零空间. 假设矩阵如下: 对矩阵A进行高斯消元得到上三角矩阵U, ...
- Matlab笔记 第二章 基本操作与矩阵输入
1 基本操作 1.1 MATLAB作为计算器 运算符:+ - * / ^ 计算结果,并将其显示 优先规则: 优先组中的左向右 优先组是(第一组最高): 1. 括号(()) 2. 次方(^) 3. 乘法 ...
- MATLAB第一节课基本操作与矩阵输入
# 计算 ## 四则运算+ - * / ^ exercise ###calculate sqrt():开根号的函数,也可以直接()^(). 函数有:cos().sin().tan.log().log ...
最新文章
- 湖北工业大学c语言作业答案,湖北工业大学C语言PPT
- Unity UI代码自动生成
- 学习《CSS选择器Level-4》不完全版
- Matlab多项式回归实现
- js方式调用php_javascript调用PHP和PHP调用javascript的方法
- CodeForces - 766C - Mahmoud and a Message dp
- 《Windows游戏编程大师技巧》中关于DirectDraw和创建DirectDraw知识笔记
- 清华大学c语言程序设计课件,c语言清华大学课件
- 深入理解 JVM 第三版
- Python爬虫爬取腾讯视频动漫专区的动漫及其描述
- [Unity]腾讯SDK踩坑之路(3)--米大师坑 + MSDK坑 (2)
- 分享五个免费图片/视频资源网站
- python抢淘宝的东西-Python实现淘宝秒杀功能
- java定义一个周长类三角形_point类 三点的三角形的周长、面积 编程求解矩形和圆面积 java 三角形的定义...
- [DAX] IF函数
- 真实数据揭秘游戏主播能否月入100万
- PPT文字很多的排版,PPT图片很多的排版,PPT图文排版
- 百度网盘不限速方法2020_亿寻——百度网盘不限速方法
- 基于RSA算法实现软件注册码原理初讨
- React中如何引入css呢
热门文章
- 2018年计算机CPU纳米制程,英特尔CPU缺货情况持续 10纳米制程遥遥无期
- 关于优先队列在图中的应用G - Millionaire Madness Kattis - millionairemadness
- taffy DB笔记
- python-ARP欺骗
- [心灵鸡汤]四十个经典小故事[1]
- Unable to complete installation/uninstallation of vCenter Converter agent Resolution解决方法
- 3D建模需要什么电脑配置?
- linux给目录赋访问权限_【Linux】Linux系统中的权限详解
- 工作中git常用命令总结
- 【Linux】二、Linux权限理解(总)