Please Help! : Unrecognized function or variable 'crandn'.
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Alvin Ang
am 27 Feb. 2022
Bearbeitet: Walter Roberson
am 30 Jun. 2025
% simple SIMO system
m = 2;
l = 20;
alphabet = [ exp(j*pi/4); exp(j*3/4*pi); exp(j*5/4*pi); exp(j*7/4*pi) ];
h0 = crandn(m, 1);
h1 = crandn(l, 1);
h2 = crandn(m, l);
hmatrix1 = diag(h1);
ptx = 1;
vinit = alphabet(round(4*rand(l, 1)+0.5));
htotinit = (h0+h2*diag(vinit)*h1)*sqrt(ptx);
ginit = htotinit/(1+htotinit'*htotinit);
mseinit = 1/(1+htotinit'*htotinit);
gold = ginit;
vold = vinit;
mseold = mseinit;
iter = 1;
while 1 == 1,
a = hmatrix1'*h2'*gold;
b = gold'*h0-1;
vcand = b/abs(b)*a./abs(a);
vnew = zeros(l, 1);
vnew = sqrt(2)*((real(vnew) > 0)-0.5+j*(imag(vnew) > 0)-0.5);
if round(norm(vnew-vold)) == 0,
break;
end
htotnew = (h0+h2*diag(vnew)*h1)*sqrt(ptx);
gold = 1/(1+htotnew'*htotnew)*htotnew;
mseold = 1/(1+htotnew'*htotnew);
msenew = mseold
vold = vnew;
iter = iter+1;
end
disp(sprintf("MSEinit=%f", mseinit))
disp(sprintf("MSEupdated=%f", msenew))
disp(sprintf("number of iterations=%i", iter))
Why is my matlab showing this error?
I am able to run my code here but not in my matlab program.
Can anyone help?
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 27 Feb. 2022
Bearbeitet: Walter Roberson
am 30 Jun. 2025
4 Kommentare
Walter Roberson
am 27 Feb. 2022
Bearbeitet: Walter Roberson
am 30 Jun. 2025
oh I missed that one, it isn't documented! https://www.mathworks.com/matlabcentral/answers/495798-why-can-t-i-use-crand-in-matlab#answer_405656
Weitere Antworten (1)
Bobby Cheng
am 30 Jun. 2025
Bearbeitet: Steven Lord
am 30 Jun. 2025
[SL: hyperlinked the function name.]
0 Kommentare
Siehe auch
Kategorien
Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!