Generazione numero uniforme in [a,b]
In matlab un numero uniforme in [a b ] si genera come $y=(b-a)*x+a$ ,naturalmente l'estremo superiore non viene mai generato vi siete mai chiesti il perché? grazie in anticipo
Risposte
scusa la mia ignoranza ma cosa intendi per numero uniforme?
chiedo scusa volevo dire uniformemente distribuito!! però non siamo troppo pignoli a volte è scocciante scrivere motlo!!
naturalmente l'estremo superiore non viene mai generato vi siete mai chiesti il perché?
intendi dal punto di vista di Matlab, del perchè non restituisce un tal valore. Oppure da un punto di vista probabilistico?
non ho capito molto...comunque io in matlab per estrarre un numero da una distribuzione uniforme uso opportunamente rand :\ anche se non so come sia implementata internamente la funzione
"pasqualinux":
però non siamo troppo pignoli a volte è scocciante scrivere motlo!!
ma se non si è chiari e si scrivono due righe non possiamo esser nella tua testa e sapere cosa cerchi di chiedere. E' gradita da parte chi pone domande almeno cercare di esser limpidi nella richiesta, così da non interpretare e cercare di sparare risposte a caso.
allora : In matlab un numero uniformemente distribuito in un intervallo [a b ] si genera come $y=(b-a)*x+a$ ,naturalmente l'estremo superiore e quello inferiore , ovvero a e b non vengono mai generati vi siete mai chiesti il perché? tutto qui , cioè si generano solo i numeri interni all'intevallo ma mai gli estremi , oppure vicini agli estremi, anche se la formula che ho scritto è esatta per ottenere un numero uniformemente distribuito in un intervallo [a b ] 11
non capisco $x$ da dove salta fuori...
$ x=$ rand(1,1) , la formula è presa dal libro di Palm , Matlab 7 .
da quel che mi sembra di capire la funzione rand genera un numero con quattro cifre decimali, per cui c'è una "probabilità" di uno su diecimilauno di generare il numero zero (o l'uno), forse è per questo che è difficile trovare gli estremi