How to write a Matlab code for a sequence of functionals and their minimums
3 次查看(过去 30 天)
显示 更早的评论
Let A(α) be a matrix (N ,N) depending on a real parameter α ( α ∈ I_α ) and (f_k )_(k≥1) a sequence of vectors in R^N.
We note by u a vector in R^N. We define the following functional sequence
J_k (α)=‖A(α) f_k - u‖^2 (norme square)
and the sequence of minimums
α_(k+1)=min (J_k) for α ∈ I_α
The vector f_1 and the number α_1 are given. We suppose that k varies from 1 to L with L≥1
Question∶How to write the Matlab code corresponding to the J_k and α_(k+1) sequences ?
6 个评论
采纳的回答
Torsten
2024-4-3
编辑:Torsten
2024-4-3
Your code:
number_of_iterations = 3;
A = @(alpha) ...; % Your NxN matrix A depending on alpha
u = ...; % Your Nx1 vector u
f(:,1) = ...; % Your initial Nx1 vector f
alpha0 = ...; % Your initial guess for alpha_opt(1)
for i = 1:number_of_iterations
fun = @(alpha) (A(alpha)*f(:,i)-u).'*(A(alpha)*f(:,i)-u);
[alpha_opt(i),~,exitflag,output] = fminunc(fun,alpha0);
f(:,i+1) = ...; function of A(alpha_opt(i)) and f(:,i) - your recurrence relation
alpha0 = alpha_opt(i);
end
5 个评论
Torsten
2024-4-4
Seems fminbnd does not need an initial guess. You only need to specify start and end point of I (assuming I is finite).
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Particle & Nuclear Physics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!