Effacer les filtres
Effacer les filtres

Data type converts from integer to array

1 vue (au cours des 30 derniers jours)
Eric Lopez
Eric Lopez le 19 Oct 2023
Commenté : Eric Lopez le 19 Oct 2023
When I run the code below, I get an error that the index is not an integer value. Instead, my variable 'r' goes from being an integer to a 1x24 array. Why is this?
--------------------------------------------------------------
R = 1:0.25:6.75;
r = 1;
p = 0;
pout = 0;
Rn = 0;
record = zeros(100, 24);
Pout = zeros(31, 24);
for i = 1:100
for j = 1:24
if r < 6.75
Rn = 4 * r - 3; %Converts ECR to its index
pout = Pout(j, Rn); %Retrive's outage probability
p = randi([0 100], 1) / 100;
if p <= pout
r = floor(2 * R) / 4;
else
r = r + 0.25;
end
elseif r == 6.75
Rn = 4 * r - 3; %Converts ECR to its index
pout = Pout(j, Rn); %Retrive's outage probability
p = randi([0 100], 1) / 100;
if p <= pout
r = floor(2 * R) / 4;
end
end
end
record(i, j) = r;
end

Réponse acceptée

Walter Roberson
Walter Roberson le 19 Oct 2023
Because R is a vector and you have
r = floor(2 * R) / 4;
which uses the vector R and assigns the result to r making r the same size as R ?
  1 commentaire
Eric Lopez
Eric Lopez le 19 Oct 2023
Thank you! These little things I just don’t notice enough as I should.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by