Function Error: Already declared
42 次查看(过去 30 天)
显示 更早的评论
My function was working fine until I typed in clear all. Now it does not work.
I get this error message: Function 'get_portfolio_return' has already been declared within this scope.
This is my function code:
function [E_Rp, sigma_Rp] = get_portfolio_return( weight,exp_rets, vols,corr)
E_Rp= weight.* exp_rets(1,1)+ (1-weight).*exp_rets(1,2);
sigma_Rp= sqrt((weight.^2.*vols(1).^2) + ((1-weight).^2.*vols(2).^2)+(2.*corr.*(weight)).*(1-weight).*vols(1).*vols(2));
end
% The stated function defines the necessary variables for subsequent
% calculations. Expected Return is calculated as a function of weight and
% expected returns. Weight is the weight of Asset1 and exp_rets are the
% expected returns of asset 1 and asset 2.
What caused this problem/ how do I fix it?
1 个评论
Jeremy
2019-11-11
Did you save this as a function file separate from your main script file, or did you put it at the bottom of your script as a local function? Did you do both? How are you calling it?
采纳的回答
Chase Weinberg
2019-11-11
1 个评论
Walter Roberson
2019-11-11
The rule is that if there is a difference between the file name and the name of the first function in the file, then in order to call the function, you need to use the file name.
更多回答(2 个)
Muhammad Sinan
2019-12-30
When define user function in MATLAB programming then you will need the following format.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function (Dependent Variables1, 2, 3, ...) = FunctionName(Independent Variables1, 2, 3, ...)
body of function
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
so, when you save this file then you have to use this file on the name same as the name of the function. Otherwise, the function will not work.
Example:
FunctionName.m
2 个评论
Sian Evans
2020-6-5
My first function name and the file name are the same yet I still get this error? I don't understand how to bypass it?
Walter Roberson
2020-6-5
What is the first executable word in the file? The very first thing that is not a comment?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Prepare Model Inputs and Outputs 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!