Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2008-12-09
年龄: 45
帖子: 2
声望力: 0 ![]() |
![]()
小弟初学Matlab, 想求下面问题最优,
function f = eushibor(x) r=readshibor; n=numel(r); y=zeros(n,1); T = 250; h = 1/T; i = 1:n-1; y(i) = (-1/( 2*log(2*pi*r(i)*h*x(3)^2) ) - (r(i+1)-r(i)-x(1)*(x(2)-r(i))*h)^2/(2*x(3)^2*r(i)*h)); f = -sum(y); function r=readshibor r = xlsread('Shibor'); 由于对Matlab的一些规则还不是很晓得, 请帮忙指出问题和修改方法,多谢多谢!! |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2008-12-09
年龄: 45
帖子: 2
声望力: 0 ![]() |
![]()
运行时总显示 Matrix must be square.
|
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2009-03-20
年龄: 42
帖子: 26
声望力: 17 ![]() |
![]()
function f = eushibor(x)
r=readshibor; n=numel(r); y=zeros(n,1); T = 250; h = 1/T; i = 1:n-1; y(i) = (-1/( 2*log(2*pi*r(i)*h*x(3)^2) ) - (r(i+1)-r(i)-x(1)*(x(2)-r(i))*h)^2/(2*x(3)^2*r(i)*h)); f = -sum(y); function r=readshibor r = xlsread('Shibor'); 上面是你的程序 我帮你修改一下成这样的 function f = eushibor(x) r = xlsread('Shibor'); r=readshibor; n=numel(r); y=zeros(n,1); T = 250; h = 1/T; i = 1:n-1; y(i) = (-1/( 2*log(2*pi*r(i)*h*x(3)^2) ) - (r(i+1)-r(i)-x(1)*(x(2)-r(i))*h)^2/(2*x(3)^2*r(i)*h)); f = -sum(y); 一般来说,函数调用是要传递和返回参数的。你是想通过readshibor函数来打开一个excel文件,然后将其传回给eushibor函数中的r。但其实没必要这么麻烦。当然,如果你真想这么做应该是这样的 ------------------------------------eushibor.m------------------------------------------------------------------------ function f = eushibor(x) r=readshibor(); n=numel(r); y=zeros(n,1); T = 250; h = 1/T; i = 1:n-1; y(i) = (-1/( 2*log(2*pi*r(i)*h*x(3)^2) ) - (r(i+1)-r(i)-x(1)*(x(2)-r(i))*h)^2/(2*x(3)^2*r(i)*h)); f = -sum(y); -----------------------------------------readshibor.m---------------------------------------------------------- function f1=readshibor() f1=xlsread(‘Shibor’); --------------------------------------------main.m------------------------------------------------------------- x=5; y=eushibor(x); --------------------------------------------------------------------------------------------------------------------- ![]() ![]()
__________________
不到马里亚纳,不知道大海的深度 不到珠穆朗玛,不知道大山的高度 不到Labfans,不知道自己的无知 |
![]() |
![]() |