Integral calling another integral

Hi I get an error when calculating an integral. The error is caused by my "nested" integral. Here is what I have written so far and running it show you an error after the calculation of f_lx. How can I have this running?
age=61;
f_AD=@(t) f_lx(t,age);
AD(age,1)=integral(f_AD,age,106);
function res=f_lx(t,age)
param_1955 = [4.67255690389772/1000, 0.0192034319814117/100000, 1.47616811690684/10];
mu_1955=@(x) f_mu(x,param_1955); % my error appears here
res = exp(-integral(mu_1955,0,age));
end
function res=f_mu(x,param)
a=param(1); b=param(2); c=param(3);
res = zeros(size(x));
ind = x>100;
res(ind) = a+b*exp(c*100)+(x(ind)-100)*0.001;
res(~ind) =a+b*exp(c*x(~ind));
end

 Accepted Answer

Change your ‘AD’ assignment to:
AD(age,1)=integral(f_AD,age,106, 'ArrayValued',1);

2 Comments

Thanks, works brilliantly.
As always, my pleasure.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!