Vous que vous m'aidiez sur la résolution de
Résolu
ansou
-
Char Snipeur Messages postés 10112 Statut Contributeur -
Char Snipeur Messages postés 10112 Statut Contributeur -
Bonjour,
j'ai un problème de programmation sur MatLab qui est un outil nouveau pour moi. J'ai écrit un programme que je ne parviens pas exécuter jusqu'à présent.
votre aide me serait utile.
Cordialement.
Le Programme est:
%%%%%%%%%% AnsD %%%%%%%%%%%%%%%%%%%%%%
% golbal R D Nui Speed Dp epais dz Dr Dw
clear all
close all
format long
R=0.80/2; % rayon du cylindre, en metre
D=2*R; % diametre du cylindre, en metre
fill=0.2487; % chargement du cylindre, en vol frac
zcl=4.21; %%% hauteur de la condition au limite
Speed=0.13; % vitesse du cylindre en rpm
Dp=0,015; % diamétre de la particule en metre
n=27; % nombre de couche dans la région statique
m=131; % nombre de segments angulair dans la région statique
Ucr=60/(2*pi)*(2*9.81/D)^0.5; % en rpm
N=100
Nt=101
% par définition 0.13/Ucr inf 0.03
active=(5.288e^-04)*(speed/Ucr)^0.44*1.29*fill^-0.55;
% fonction de la profondeur de la couche active
Nui=Speed/fill;
depth=D/2*(1-cos(Nui/2)); % en metre h
delta=Nui/m;
beta=20; % l angle dynamique de repos en deg
static=depth*(1-active);
drho=static/n;
[THETA,RHO]=meshgrid(-Nui/2-pi/2:dtheta:Nui/2-pi/2,...
D/2-static:drho:D/2);
[X,Y]=pol2cart(THETA,RHO);
% Interface definie
L=D/2*sin(Nui/2);
d=depth*active; % epaisseur de la couche active par approximation
zcl=4; % distance m
tmax=300; %temps en s
dh=h/(N-1);
dz=zcl/(Nt-1);
z= 0:dz:zcl;
t = 0:dt:tmax;
h=D/2*cos(Nui/2); % écart entre R-h
for i=1:n
r=h+d+(i-0.5)*drho;
epais=0.5*(L^2/d-2*h)-0.5*((L^2/d-2*h)^2-4*(L^2+h^2-r^2))^0.5;
Nu=acos((h+epais)/2);
% k1(i)=roud(m/2*(beta-2*phi)/beta)+1;
%k2(i)=roud(m/2*(1+2*phi/beta));
end
% calcul du coéfficient de dispersion axiale, m2/s
Dz=5.27e-06*(Speed/Ucr)*0.44*D^1.29*Dp^0.35*fill^-0.55;
%calcul du coéfficient de dispersion radiale m2/s
Dr=Dz*((1-active)/active)^2;
% coéfficient de dispersion angulaire
Dw=Dz*(2*L+Nui*R)/(2*L);
%%%%Boucle d initiation
for i=1:N
H(i,1)=h;
Qv(i,1)=((4*pi*n*R)/3)((tan(theta)/tan(beta))+cot(beta)*(dh(i,1)/dz))(((2H(i,1)/R)-(H(i,1)/R^2))^(3/2));
end
%%% boucle qui génére le temps et la distance
for j=2:Nt
H(:,j)=H(:,j-1);
for i=1:N
if Ht(i,j)<=tan(beta-theta)
H(i,j)=h/(tan(beta -theta));
end
if i==1
if j<=round(3/dt)
H(i,j)=h(tan(beta-theta))+Dp;
end
Qv(i,j)=((4*pi*n*R)/3)((tan(theta)/tan(beta))+cot(beta)*(dh(i,j)/dz))(((2H(i,j)/R)-(H(i,j)/R^2))^(3/2));
end
end
end
%%%%%%%% Traçer les courbes %%%%%%%
figure(1)
plot(z,H(2,:))
xlabel('z(m)');
ylabel('H(z,t)');
figure(2)
plot(z,Qv(1,:))
xlabel('z(m)');
ylabel('Qv(z,t)');
end
j'ai un problème de programmation sur MatLab qui est un outil nouveau pour moi. J'ai écrit un programme que je ne parviens pas exécuter jusqu'à présent.
votre aide me serait utile.
Cordialement.
Le Programme est:
%%%%%%%%%% AnsD %%%%%%%%%%%%%%%%%%%%%%
% golbal R D Nui Speed Dp epais dz Dr Dw
clear all
close all
format long
R=0.80/2; % rayon du cylindre, en metre
D=2*R; % diametre du cylindre, en metre
fill=0.2487; % chargement du cylindre, en vol frac
zcl=4.21; %%% hauteur de la condition au limite
Speed=0.13; % vitesse du cylindre en rpm
Dp=0,015; % diamétre de la particule en metre
n=27; % nombre de couche dans la région statique
m=131; % nombre de segments angulair dans la région statique
Ucr=60/(2*pi)*(2*9.81/D)^0.5; % en rpm
N=100
Nt=101
% par définition 0.13/Ucr inf 0.03
active=(5.288e^-04)*(speed/Ucr)^0.44*1.29*fill^-0.55;
% fonction de la profondeur de la couche active
Nui=Speed/fill;
depth=D/2*(1-cos(Nui/2)); % en metre h
delta=Nui/m;
beta=20; % l angle dynamique de repos en deg
static=depth*(1-active);
drho=static/n;
[THETA,RHO]=meshgrid(-Nui/2-pi/2:dtheta:Nui/2-pi/2,...
D/2-static:drho:D/2);
[X,Y]=pol2cart(THETA,RHO);
% Interface definie
L=D/2*sin(Nui/2);
d=depth*active; % epaisseur de la couche active par approximation
zcl=4; % distance m
tmax=300; %temps en s
dh=h/(N-1);
dz=zcl/(Nt-1);
z= 0:dz:zcl;
t = 0:dt:tmax;
h=D/2*cos(Nui/2); % écart entre R-h
for i=1:n
r=h+d+(i-0.5)*drho;
epais=0.5*(L^2/d-2*h)-0.5*((L^2/d-2*h)^2-4*(L^2+h^2-r^2))^0.5;
Nu=acos((h+epais)/2);
% k1(i)=roud(m/2*(beta-2*phi)/beta)+1;
%k2(i)=roud(m/2*(1+2*phi/beta));
end
% calcul du coéfficient de dispersion axiale, m2/s
Dz=5.27e-06*(Speed/Ucr)*0.44*D^1.29*Dp^0.35*fill^-0.55;
%calcul du coéfficient de dispersion radiale m2/s
Dr=Dz*((1-active)/active)^2;
% coéfficient de dispersion angulaire
Dw=Dz*(2*L+Nui*R)/(2*L);
%%%%Boucle d initiation
for i=1:N
H(i,1)=h;
Qv(i,1)=((4*pi*n*R)/3)((tan(theta)/tan(beta))+cot(beta)*(dh(i,1)/dz))(((2H(i,1)/R)-(H(i,1)/R^2))^(3/2));
end
%%% boucle qui génére le temps et la distance
for j=2:Nt
H(:,j)=H(:,j-1);
for i=1:N
if Ht(i,j)<=tan(beta-theta)
H(i,j)=h/(tan(beta -theta));
end
if i==1
if j<=round(3/dt)
H(i,j)=h(tan(beta-theta))+Dp;
end
Qv(i,j)=((4*pi*n*R)/3)((tan(theta)/tan(beta))+cot(beta)*(dh(i,j)/dz))(((2H(i,j)/R)-(H(i,j)/R^2))^(3/2));
end
end
end
%%%%%%%% Traçer les courbes %%%%%%%
figure(1)
plot(z,H(2,:))
xlabel('z(m)');
ylabel('H(z,t)');
figure(2)
plot(z,Qv(1,:))
xlabel('z(m)');
ylabel('Qv(z,t)');
end
A voir également:
- Vous que vous m'aidiez sur la résolution de
- Réduire résolution image - Guide
- Resolution changer pc - Télécharger - Divers Utilitaires
- Résolution native ✓ - Forum Ecran
- Impossible de charger l'image haute résolution messenger ✓ - Forum Mail
- Résolution de l'écran grisé - Forum Windows 10