water filling_cvx

3 vues (au cours des 30 derniers jours)
Nasrin
Nasrin le 2 Oct 2024
Commenté : Nasrin le 8 Oct 2024
I have this code in my matlab but it has an error as:
Incorrect number or types of inputs or outputs for function vec.
I would really appreciate it if you could help me to solve it.
I should emphasize that I installed cvx on my matla.
Np = 4;
Nsc= 4;
mu_l_n = [1.56247628361161e-06;
1.59519914659906e-06;
1.27498226759933e-06;
1.03143933197703e-05];
tilde_P1_tot = 1000;
sigma2_dBm = -104;
sigma2 = 10^(sigma2_dBm / 10 - 3);
cvx_begin quiet
Unrecognized function or variable 'cvx_begin'.
variable p1_l_n(Np) % Power allocation vector, column vector
term = (mu_l_n.^2 .* p1_l_n) / sigma2; % Define term for clarity
maximize(sum(log(1 + term))) % Objective function to maximize sum rates
subject to
sum(p1_l_n) == tilde_P1_tot / Nsc; % Total power constraint across subcarriers
p1_l_n >= 0; % Power must be non-negative
cvx_end
% Display the optimal power allocation
disp('Optimal power allocation:');
disp(p1_l_n);

Réponses (1)

M.
M. le 3 Oct 2024
The code you provided works fine on my computer and outputs :
Optimal power allocation:
62.4982
62.4989
62.4901
62.5129
You have to make sure that the directory that stores the cvx toolbox is on your Matlab path.
  5 commentaires
Walter Roberson
Walter Roberson le 3 Oct 2024
Is the problem with R2024a or R2024b ?
Nasrin
Nasrin le 8 Oct 2024
@Walter Roberson matlab R2024a

Connectez-vous pour commenter.

Catégories

En savoir plus sur Introduction to Installation and Licensing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by