مشاهدة النسخة كاملة : aide pour un code MATLAB
nada3abir
2012-06-13, 15:58
salam
voila ce que je voulu faire:
for n=0:N-1
if n==0
(entrer une valeur qui appartienne à l'intervalle ouvert 0 1] )
else
)x(n+1)=r*x(n)*(1-x(n
end
comment écrire le code MATLAB de la phrase en rouge
merci:sdf:
Que voulez vous dire par : Entrer...
Afficher une valeure ?
Ou vous demander au utilisateur d'ntrer une valeure ?
nada3abir
2012-06-13, 16:55
j'ai voulu dire demander à l'utilisateur d'entrer une valeur dans l'intervalle 0,1
ouvert à 0 et fermer à 1
(je voulu que ça se passe automatiquement par MATLAB sans utiliser l'instruction input)
est ce que c'est faisable
djamel123
2012-06-13, 17:05
هل هاذي القيمة عشوائية مابين 0 و 1
أم أن المستخدم هو اللذي يُدخلها؟؟
nada3abir
2012-06-13, 17:07
c'est une valeur aléatoire entre 0 et 1
aiham_dz
2012-06-13, 17:22
Salam
(entrer une valeur qui appartienne à l'intervalle ouvert 0 1] )
Par example la valeur de r entre 0 et 1
r=rand
RAND Uniformly distributed random numbers.
RAND(N) is an N-by-N matrix with random entries, chosen from
a uniform distribution on the interval (0.0,1.0).
djamel123
2012-06-13, 17:25
هي من المُفترض أن الدالة
rand
تعطي قيمة عشوائية مابين 0 و 1
لكن مجال مغلوق
وحتى نفتح المجال من جهة الصفر نستعمل
eps وهي أقل قيمة حقيقية في الماتلاب
for n=0:N-1
if n==0
x(n)=rand*(1-eps)+eps;
else
x(n+1)=r*x(n)*(1-x(n))
end
end
nada3abir
2012-06-13, 18:05
هي من المُفترض أن الدالة
rand
تعطي قيمة عشوائية مابين 0 و 1
لكن مجال مغلوق
وحتى نفتح المجال من جهة الصفر نستعمل
eps وهي أقل قيمة حقيقية في الماتلاب
for n=0:N-1
if n==0
x(n)=rand*(1-eps)+eps;
else
x(n+1)=r*x(n)*(1-x(n))
end
end
MERCI POUR LE CODE je travail dans le chaos la fonction rand me donne des valeurs avec une distrubution uniforme, je sais pas si on peut utiliser cette fonction pour générer des séquences chaotiques
djamel123
2012-06-13, 21:48
MERCI POUR LE CODE je travail dans le chaos la fonction rand me donne des valeurs avec une distrubution uniforme, je sais pas si on peut utiliser cette fonction pour générer des séquences chaotiques
أضن أنك ستجدين ماتريدينه في
Statistics Toolbox
أولا تأكدي من أنها موجودة في نسخة الماتلاب التي لديك بكتابة كلمة
ver
واذا ظهرت ابحثي عن الدالة التي تريدينها هنا (http://www.mathworks.com/products/statistics/)
في
functions list
nada3abir
2012-06-20, 14:55
salam tous
il parait que la fonction rand génère des valeurs aléatoire, le problème c'est que je suis pas sûr que je vais prendre toute les valeur entre ]0,1[u
je veut prendre dans cet intervalle avec une précision de 0.0001
for n=0:N-1
if n==0
["]x=0.0001:0.0001:(1-eps)[
else
)x(n+1)=r*x(n)*(1-x(n
end
comment écrire le code MATLAB de la phrase en rouge
merci
:sdf::sdf::sdf:
nada3abir
2012-06-21, 21:26
هل من مجيب:1:
nada3abir
2012-06-23, 21:17
salam tous
il parait que la fonction rand génère des valeurs aléatoire, le problème c'est que je suis pas sûr que je vais prendre toute les valeur entre ]0,1[u
je veut prendre dans cet intervalle avec une précision de 0.0001
for n=0:N-1
if n==0
["]x=0.0001:0.0001:(1-eps)[
else
)x(n+1)=r*x(n)*(1-x(n
end
comment écrire le code MATLAB de la phrase en rouge
merci
:sdf::sdf::sdf:
je suis bloquer il na pas qlq qui me repond
djamel123
2012-06-23, 22:19
je suis bloquer il na pas qlq qui me repond
أنت ممكن تستعملي الدالة
round
format long
N=10;r=0.5;x=zeros(1,N);
x(1)=rand*(1-2*eps)+eps;
x(1)=round(x(1)*10000)/10000;
for n=1:N-1
x(n+1)=r*x(n)*(1-x(n))
x(n+1)=round(x(n+1)*10000)/10000;
end
x
format short
fayssal22
2012-06-23, 23:38
je suis bloquer il na pas qlq qui me repond
ne t'inquiète pas je peux vous aider, mais - franchement j'ai rien compris - je veux savoir qu'est ce que tu cherches exactement ????????
nada3abir
2012-06-24, 10:12
ne t'inquiète pas je peux vous aider, mais - franchement j'ai rien compris - je veux savoir qu'est ce que tu cherches exactement ????????
Bon j’ai une equation : x(n+1)=4*x(n)*(1-x(n)) ; je veut calculer les valeurs de cette équation pour N=31 (exemple) pour plusieurs x(0) ; mais le pg doit incrémenter les valeurs de x(0)avec un pas précis et calculer par la suite x(1)…x(30) ;
A la fin du pg je doit trouver une matrice x(m,N)
i=1000
for i=1:m
for n=0:N-1
if n==0
x=.0001:.0001:.9999;
else
x(n+1)=4*x(n)*(1-x(n));
end
end
end
:confused::confused::confused::confused:
fayssal22
2012-06-24, 12:48
désolé, mais il y a encore quelques choses floues
bon, d’après ce que j'ai pu conclure
tu voudrais calculer x(1),x(2).......................x(30) pour chaque valeur de x(0) tel que x(0) ∈ ]0 1[ mais quel est le nombre d'itérations que tu veux prendre, ou bien le pas d'incrémentation........etc ?????????? ou x(0) est piqué aléatoirement comme vous l'avez mentionné plus haut ????????????????
vous voyez il y a pas mal de détails que tu as ignoré
اذن ينبغي عليك ان تعرفي مسبقا ماذا تردين بالضبط، و اذا لم يكن لديك مانع فلما لا تطرحي نص المسألة مباشرة
cette question n'est pas du tout difficile, et vous pouvez la considérer comme close dés que vous mettriez les points sur les i
nada3abir
2012-06-24, 21:46
[QUOTE=fayssal22;10541092][LEFT]désolé, mais il y a encore quelques choses floues
bon, d’après ce que j'ai pu conclure
tu voudrais calculer x(1),x(2).......................x(30) pour chaque valeur de x(0) tel que x(0) ∈ ]0 1[
0.0001 ce que écrit en haut est juste, mais j'ai mentionnée le pas d’incrémentation par
la première valeur est 0.0001 et la dernière est 0..9999
:confused:
fayssal22
2012-06-24, 22:21
et N=??????????? c'est juste pour choisir la méthode de programmation en fonction de la taille de la matrice
fayssal22
2012-06-25, 00:04
puisque tu n'as pas répondu je suppose que N=31
clear;clc;
N=31;
h=.0001;
nbr=1+((.9999-.0001)/h);
%a la fin de l'execution vous aurez une matrice A de N lignes et de nbr colonnes
A=zeros(N,nbr);
A(1,:)=.0001:.0001:.9999;
k=1;
while k<N
A(k+1,:)=4*A(k,:).*(ones(1,nbr)-A(k,:));
k=k+1;
end
%au matlab il n y a pas de zero entre parenthèse
%le vecteur x(0) c'est A(1,:)
%le vecteur x(1) c'est A(2,:)
%le vecteur x(2) c'est A(3,:)
%le vecteur x(30) c'est A(31,:)
% si tu veux sortir x(0) tapez x0=A(1,:);x1=A(2,:); et ainsi de suite.............j’espère que ça va bien fonctionner, n'oubliez surtout pas de m'informer si affirmatif ou négatif
nada3abir
2012-06-26, 11:05
puisque tu n'as pas répondu je suppose que N=31
clear;clc;
N=31;
h=.0001;
nbr=1+((.9999-.0001)/h);
%a la fin de l'execution vous aurez une matrice A de N lignes et de nbr colonnes
A=zeros(N,nbr);
A(1,:)=.0001:.0001:.9999;
k=1;
while k<N
A(k+1,:)=4*A(k,:).*(ones(1,nbr)-A(k,:));
k=k+1;
end
%au matlab il n y a pas de zero entre parenthèse
%le vecteur x(0) c'est A(1,:)
%le vecteur x(1) c'est A(2,:)
%le vecteur x(2) c'est A(3,:)
%le vecteur x(30) c'est A(31,:)
% si tu veux sortir x(0) tapez x0=A(1,:);x1=A(2,:); et ainsi de suite.............j’espère que ça va bien fonctionner, n'oubliez surtout pas de m'informer si affirmatif ou négatif
merci je vais essayer et voir ce que va me donner
vBulletin® v3.8.10 Release Candidate 2, Copyright ©2000-2025, TranZ by Almuhajir