Programmer avec MATLAB

Résolu/Fermé
koukou - 17 mars 2008 à 18:51
 comment - 23 janv. 2016 à 02:10
Bonjour,
alors SVP si il y a quelle qu un qui pourai m aider dans un des programme suivant:
1_ecrire un programme qui génère une variable aleatoire qui suit la loi noramle (loi de gausse )
2_Déduire la loi de probabilité d'une variable aleatoire a partire d'une sequance de valeurs
3_Ecrire un programme qui permet de deduire la serie statisue d'un texte pour les caracteres et les mots
je vous remerci d avance.

13 réponses

Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
17 mars 2008 à 22:15
Salut
Je peux juste t'aider pour la première, ça te convient quand même? De toute façon ma question est un peu stupide puisque le message est déjà posté :-D
Pour générer des nombres aléatoires suivant une loi gaussienne sous Matlab, pas besoin de programme, la fonction randn le fait pour toi.
A plus
7
Comment faire sa
0
rou=1.229;
V=12;
c1=0.5176;
c2=116;
c3=0.4;
c4=05;
c5=21;
c6=0.0068;
betta=12;
R=21.5;
S=pi*R^2;
w=40;
lamda=(w*R)/V;
Q=((1/(lamda+0.08*betta))+(0.035/betta^3+1));
Cp=c1*(c2/Q-c3*betta-c4)*exp(-c5/Q)+c6*lamda;
figure

subplot(121)
plot(Cp,lamda,'r*')
grid on
xlabel('lamda'),ylabel('Cp')

disp('La valeur de puissance aerodynamique est :');
Pa=1/2*rou*S*V^3*Cp

subplot(122)
plot(Pa,V,'r*')
xlabel('lpa'),ylabel('wind speed (m/s)')
grid on

le probleme toutes les donnees est constantes comment je trouve les courbes sous forme expolentielle
2
merci ça me convient tres bien et ta question est loin d etre stupide :):)
merci encore une fois mais je sais vraiment pas de quoi sa parle alors si tu peux me dire stp comment faire sa
(utiliser la fonction randn ) si tu pouvai m eclairé encor un peu stp :) si sa ne te derange pas
merci
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
17 mars 2008 à 23:35
Si tu veux une aide plus précise, tu peux taper help randn sous Matlab.
Pour résumer randn(n,m) te donne une matrice nxm de nombres aléatoires suivant la loi normale centrée réduite.
Ça te convient comme explication ou tu veux plus de détails?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
merci , mais le probleme c est que je sais vraiment pas quoi ecrire et je voix pas comment comancer :(:(:(
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
18 mars 2008 à 00:18
Bzn si tu tapes rand(50,1) par exemple ça te donnera 50 nombres aléatoires suivant la loi gaussienne organisés en colonne. rand(1,50) te donnera 50 nombres aléatoires suivant la loi gaussienne organisés en ligne.
0
merci je vais essaye de faire sa
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
18 mars 2008 à 09:17
De rien
Désolé pour le reste de tes questions, je vois pas...
0
merci déja que tu ma ete d une tres grand aide merci encore
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
20 mars 2008 à 19:21
Si t'as d'autres questions, hésite pas à faire un nouveau sujet.
Avec un peu de chance je pourrais t'aider un peu.
A plus
0
d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009
20 mars 2008 à 21:10
bonsoir
SVP j'ai besoin d'aide ! je cherche un programme de résolution des systèmes linaire (méthode de GAUSSE) sous MATLAB ! MERCI et aidé moi s'il vous plait !!!
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
20 mars 2008 à 21:11
Fais ton propre post.
Et de toutes façons Matlab le fait, pas besoin de programme.
0
d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009
20 mars 2008 à 21:15
oh! merci pr la reponse ! mais le prof ma demandé de préparé un programme ki utilise la methode de gausse! je doi l'éxposé j'ai un programme mais il m donne """??? Error using ==>triang
Too many inputarguments.

je c pa c koi le probléme voila mon programme :
%programme principal pour resoudre l'equation Ax=b
n=input (' Donner la taille de la matrice')
b=input('Donner le second membre')
A=input('entrer la matrice')
[A,b]=triang(A,b,n)
disp('la solution du systeme')
b = solv(A,b,n)

function [A,b]=triang(A,b,n)
for k=1:n
for i=k+1:n
A(i,k)=A(i,k)/A(k,k);
b(i)=b(i)-A(i,k)*b(k);
for j=k+1:n
A(i,j)=A(i,j)-A(i,k)*A(k,j);
end
end
end

function [b]= solv(A,b,n)
for k=n:-1:1
for j=k+1:n
b(k)=b(k)-A(k,j)*b(j);
end
b(k)=b(k)/A(k,k);
end
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
21 mars 2008 à 13:57
Salut
triang est déjà une fonction Matlab, ne l'utilise pas pour définir une fonction. J'ai aussi changé le solv. Il y a pas de fonction Matlab s'appelant solv mais au cas où t'aurais l'idée saugrenue d'ajouter un e au nom de ta fonction sache qu'il y a une fonction Matlab s'appelant solve. Du coup j'ai mis un nom bien différent.

Il faudra aussi que tu améliores ton programme pour le cas où un zéro apparaît sur la diagonale.
%programme principal pour résoudre l'equation Ax=b
n=input ('Donner la taille de la matrice, n = ');
n
b=input('Donner le second membre, b = ');
b
A=input('Entrer la matrice, A = ');
A
[A,b]=triangle(A,b,n);
disp('La solution du système est')
b = solve_triangle(A,b,n)

function [A,b]=triangle(A,b,n)
for k=1:n
for i=k+1:n
A(i,k)=A(i,k)/A(k,k);
b(i)=b(i)-A(i,k)*b(k);
for j=k+1:n
A(i,j)=A(i,j)-A(i,k)*A(k,j);
end
end
end

function b= solve_triangle(A,b,n)
for k=n:-1:1
for j=k+1:n
b(k)=b(k)-A(k,j)*b(j);
end
b(k)=b(k)/A(k,k);
end
0
d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009
21 mars 2008 à 14:29
merci pr votr reponse!
"""??? Undefined command/function 'triangle'.""" c le message kil m'affiche apré l'éxecution du progragemme :(
SVP aidé moi je doi l'éxposé le lundi prochain ! :-(
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832 > d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009
21 mars 2008 à 14:48
Je suppose que t'as fait un copié-collé et que t'as lancé ça directement ou alors que t'as tout mis dans le même fichier.
Il te faut trois fichiers:

main.m qui contient:
%programme principal pour résoudre l'equation Ax=b
n=input ('Donner la taille de la matrice, n = ');
n
b=input('Donner le second membre, b = ');
b
A=input('Entrer la matrice, A = ');
A
[A,b]=triangle(A,b,n);
disp('La solution du système est')
b = solve_triangle(A,b,n)

triangle.m qui contient:
function [A,b]=triangle(A,b,n)
for k=1:n
for i=k+1:n
A(i,k)=A(i,k)/A(k,k);
b(i)=b(i)-A(i,k)*b(k);
for j=k+1:n
A(i,j)=A(i,j)-A(i,k)*A(k,j);
end
end
end

solve_triangle.m qui contient:
function b=solve_triangle(A,b,n)
for k=n:-1:1
for j=k+1:n
b(k)=b(k)-A(k,j)*b(j);
end
b(k)=b(k)/A(k,k);
end

Et le programme se lance en tapant tout simplement main dans la fenêtre Matlab.
Ciao
0
d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009 > Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009
21 mars 2008 à 21:14
re dsl j'ai été pas la ! no croi moi fréro i swear je savé pas les régles ! je savé pas ke je pe pas metr mon message dans plusieurs discution !! :-( je suis vraiment désolé !!
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832 > d.radouan Messages postés 8 Date d'inscription jeudi 20 mars 2008 Statut Membre Dernière intervention 9 mai 2009
21 mars 2008 à 21:18
Pas grave... mais évite la prochaine fois.
Ça te permettra pas d'obtenir de réponse plus vite et en plus c'est gavant.
Mais t'en fais pas, c'est oublié :-D
Par contre, une autre règle qu'il faut que t'essaies de suivre!!! Pas de langage SMS!!!
Ça aussi c'est gavant, passer 5min à déchiffrer un truc...
Mais bon... t'as l'air sincère et tout et tout... donc je t'en veux pas.
Ciao
0
selma > Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009
13 déc. 2014 à 16:03
svp pouvez-vous m 'aider . il me demande d'écrire n= ,a= et b= ... !!!!!!!!
0
salut!
voila mon probleme c de programmer l'equation suivante avec matlab et faire un plot
dx(t)/t=r*x(t)(1-x(t)/k)+e(t)
e(t) est un briut blanc c à d une variable aléatoire suivant un e loi normal.
r et k sont donné.
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
4 mai 2008 à 15:07
Salut
Tout d'abord, si tu as un problème, c'est mieux que tu fasse un sujet à toi.
Ensuite, utilise un des ode solvers de Matlab ou résous ton équation par différences finies.
A plus
0
barsof12 Messages postés 6 Date d'inscription dimanche 30 décembre 2007 Statut Membre Dernière intervention 14 mai 2008
Modifié le 29 mai 2008 à 20:36
salut moi ma quistion est:
1-commont ajuster une loi de probabilité avec matlab ''loi de weibull"
2-faire les graphs de densité et fiabilité
2-comment trouver le mini d'une fonction
merci d'avance
Adresse mail supprimée Modération CCM
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 832
14 mai 2008 à 19:06
Salut, moi mes réponses sont:
1-Aucune idée
2-Aucune idée
3-fminbnd,fminsearch
A plus
0