Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/03/2010, à 17:13

ianbox

C++ - Calcul de la masse volumique de l'air

Bonjour, je dois fair un script en C++ pour calculer la masse volumique de l'air
Pour ce faire, je dois récupérer 3 variables:

- Humidité de l'air (en %)
- Pression atmosphérique (en Pa)
- Température (en °C)

Comment puis-je faire cela ?

Hors ligne

#2 Le 13/03/2010, à 17:20

Grünt

Re : C++ - Calcul de la masse volumique de l'air

Tu coinces sur le développement, ou sur la formule mathématique?

(Dans les deux cas, on n'est pas là pour faire tes devoirs tongue)


Red flashing lights. I bet they mean something.

Hors ligne

#3 Le 13/03/2010, à 18:29

ianbox

Re : C++ - Calcul de la masse volumique de l'air

sur le developpement , la formule je la connait ...

Hors ligne

#4 Le 13/03/2010, à 18:45

nicolas66

Re : C++ - Calcul de la masse volumique de l'air

Bah une fois que t'as défini des trois variables, tu n'as qu'à afficher la valeur de ta formule, non ?


"The computer was born to solve problems that did not exist before." (B. Gates)

Hors ligne

#5 Le 13/03/2010, à 18:55

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Vu comme ça oui, mais j'ai pas envie de surveiiler la météo pour changer les variables à la main , donc en fait la question c'est comment récupérer ces variable depuis un site de météo comme weather.com par exemple.

Hors ligne

#6 Le 13/03/2010, à 19:04

helly

Re : C++ - Calcul de la masse volumique de l'air

je verrai plutôt du shell pour  ça , beaucoup plus simple pour l'affichage de pages internet !
En c++ j'ai pas de libs en tête qui fassent ça yikes

edit :du wget , du cat  et le tour est joué ! Par contre faut encore trouver le site ^^'

edit2: par contre si c'est juste le résultat que tu veux, pas la partie prog : t'as un applet météo qui fait ca sur GNOME

Dernière modification par helly (Le 13/03/2010, à 19:06)


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne

#7 Le 13/03/2010, à 19:10

ianbox

Re : C++ - Calcul de la masse volumique de l'air

En fait j'aurai préférer en C parceque cela doit s'intégrer dans un programme qui simule le fonctionnement d'un moteur à explosion...

Hors ligne

#8 Le 13/03/2010, à 22:36

Teofifil

Re : C++ - Calcul de la masse volumique de l'air

helly a écrit :

je verrai plutôt du shell pour  ça , beaucoup plus simple pour l'affichage de pages internet !
En c++ j'ai pas de libs en tête qui fassent ça yikes

Via Qt. Un début de piste : http://doc.trolltech.com/4.5/qwebview.html

Dernière modification par Teofifil (Le 13/03/2010, à 22:36)

Hors ligne

#9 Le 14/03/2010, à 16:47

Le Farfadet Spatial

Re : C++ - Calcul de la masse volumique de l'air

Salut à tous !

ianbox a écrit :

je dois fair un script en C++

C'est-à-dire que C++ n'est pas un langage de script.

En fait j'aurai préférer en C

Que veux-tu faire ? Du C ou du C++ : ce sont deux langages différents.

c'est comment récupérer ces variable depuis un site de météo comme weather.com

Tout d'abord, il faut se connecter au site.

   Ensuite, il faut connaître le format des fichier, ensuite l'adresse où ils sont accessibles.

   Après, il s'agit simplement, peu ou prou, de télécharger un fichier et de le lire, ce n'est pas la mer à boire. Donc, déjà : où vas-tu chercher les données ? Un site comme Weather.com n'est pas très bien fait pour avoir un champ météorologique complet.

   Cela dit :

cela doit s'intégrer dans un programme qui simule le fonctionnement d'un moteur à explosion

Est-il vraiment nécessaire de prendre en compte les variations de densité de l'air ambiant ? Ce qui va se passer dans le moteur ne va-t-il pas totalement l'emporter sur les faibles variations dues à la météo ? Pour l'air à 20°C, on prend généralement une masse volumique de 1,204 kg/m³ et c'est réglé. Ma première impression, c'est que tu te lances dans une sophistication inutile. Dans la mesure où tes interventions me donnent l'impression que tu n'es pas encore très à l'aise dans la programmation, je pense qu'il n'est pas utile de te lancer dans des choses compliquées dont l'impact sera totalement marginal.

   À bientôt.

   Le Farfadet Spatial

Hors ligne

#10 Le 14/03/2010, à 18:06

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Je sais bien que cela a peu d'impact sur la pression qui regnera dans la chambre de combustion en fin de compression
mais cela a un intérêt quant au comportement du système d'admission, dépression dans le collecteur, effets de suralimentation naturelle, admission variables ...
En fait au départ, je pensait intégrer ces variables en temps réel dans le programme, mais vu le nombre de calcuuls qui devraient être effectués dans des temps très courts, je m'oriente plus vers le calcul des variables et autres paramètres avant la simulation ...

Donc la solution de fouiller dans les pages web est maintenant acceptable vu que cela ne mangera pas les ressources pour la simulation en fonctionnement ....

Hors ligne

#11 Le 14/03/2010, à 18:27

gilbert

Re : C++ - Calcul de la masse volumique de l'air

Salut,

quel est ton niveau d'étude ? Et surtout quel domaine ? Mécanique ou informatique ?

à mon avis, sans être méchant, tu essaies de réinventer l'eau chaude... Il existe déjà des simulateurs pour ça.. N'importe quel logiciel de CAO fait l'affaire (solidworks, catia) ok ils ne sont pas libres, et tournent encore moins sous linux, mais l'industrie n'est pas libre..

Quelle est la finalité de réécrire un tel programme? Surtout que entre ton post #1 et #5, tu as fais un sacré virage dans ta question.. Le second balayant radicalement le premier..


Simplement moi-même..

Hors ligne

#12 Le 14/03/2010, à 18:30

Le Farfadet Spatial

Re : C++ - Calcul de la masse volumique de l'air

Salut à tous !

   Je reste dubitatif, Ianbox. Enfin, si tu y tiens.

   Toutefois, vu que tu vas calculer cela une fois pour toutes, le plus simple consiste à faire de la température, de la pression et de l'humidité des variables du programme que l'utilisateur entre au début, soit via l'entrée standard, soit dans un fichier de configuration que lira le code.

   Cela te permettra d'ailleurs de faire des tests, pour quantifier l'influence réelle des conditions météorologiques sur le fonctionnement de ton moteur.

   À bientôt.

                                                                                                                                     Le Farfadet Spatial

Hors ligne

#13 Le 15/03/2010, à 11:19

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Pour ce qui est du niveau d'études, je crois qu'on s'en fout ...

Sinon effectivement un fichier de configuration lu par le programme me semble être une bonne solution ...

Je vous tiens au courant de l'avancée des choses et merci à tous.

Hors ligne

#14 Le 15/03/2010, à 13:43

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Bon, voila une ebauche :

#include <stdio.h>

#include <stdlib.h>
#include <math.h>



int main()

{

	const int P = 102700; // Pression atmosphérique en Pascal
	const int T = 10; // Température en ° Celsius
	const int H = 62;  // Humidité relative en %

	// Calcul de la pression de vapeur d'eau saturante dans l'air en Pascal

	float Psat = (611.213*exp((17.5043*T)/(241.02+T)));

	// Calcul de la constante de l'air humide

	float Rh = (287.06/(1-(((H/100)/P)*(1-(287.06/461)))));

	// Calcul de la masse volumique de l'air humide en kg/m3

	float Mvah = (P/(Rh*(T+273.15)));

	// Affichage des valeurs

	printf("Température : %d °C\n", T);
	printf("Pression atmosphérique : %d Pa\n", P);
	printf("Humidité relative : %d %\n", H);
	printf("Pression de vapeur d'eau saturante : %f Pa\n", Psat);
	printf("Constante de l'air humide : %f\n", Rh);
	printf("Masse volumique de l'air humide : %f kg/m3\n", Mvah);

	return 0;
}

Les variables sont initialisées au début, il suffira ensuite de les récupérer comme on le disait dans un fichier de configuration initialisé au lancement du programme.

J'ai fait un ptit tour du monde vite fait, on trouve des variations de la masse volumique de l'ordre de 100 g/m3.

Ce qui m'intéresserai maintenant, c'est d'en déduire la masse de vapeur d'eau, on connait l'humidité relative, mais vu que c'est le poucentage d'un pourcentage, celui de la saturation maximum en fonction de la température , je n'ai pas trouvé de façon de calculer cela sans me référer à un graphique.

Quelqu'un aurait-il une piste ?

Hors ligne

#15 Le 15/03/2010, à 13:46

helly

Re : C++ - Calcul de la masse volumique de l'air

La c'est des maths que tu demandes, c'est pas notre domaine, cherches un peu !


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne

#16 Le 15/03/2010, à 14:09

no_spleen

Re : C++ - Calcul de la masse volumique de l'air

bonjour,

Mon domaine étant justement la thermodynamique, je peux te répondre.

la teneur en eau de l'air, en kg eau / kg air sec est égale à

X = 0.622 *  ( (ft) / (Patm - ft) )

ou ft est la pression partielle de vapeur d'eau, en Pa.

Maintenant, je ne pense pas que ce soit le bon forum pour ce genre de question !

Hors ligne

#17 Le 15/03/2010, à 14:10

no_spleen

Re : C++ - Calcul de la masse volumique de l'air

et biensur, ft = Psat * 0.01 * H

Hors ligne

#18 Le 15/03/2010, à 14:22

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Merci pour ta réponse, c'est nickel !

C'est vrai que cela n'est pas de la programmation, mais ce que je fais regroupe de la programmation, de la mécanique, de la physique, des maths, etc ...

J'ai poster ici car le domaine que je maitrise le moins est la programmation (je me suis mis au C++ avant-hier ...)

Maintenant, je pense que le sujet peut tout de même intéresser des gens qui aiment l'informatique et la physique ou les maths ou l'automobile, etc ...

Non ???

Hors ligne

#19 Le 15/03/2010, à 15:45

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Dis moi no_spleen, voici les résultats, cela te semble correct ?

pour 13 °C, 47 % humidité, pression atmo 102600 Pa

masse d'eau: 5.341 g/m3
masse air sec 1243.709 g/m3

Sinon par curiosité, pourquoi 0.622, c'est une constante ?

Hors ligne

#20 Le 15/03/2010, à 16:45

no_spleen

Re : C++ - Calcul de la masse volumique de l'air

j'ai +- les mêmes résultats en effet.

Pour le 0.622 cela vient du développement de la formule mais je ne l'ai plus en tête, si je retombe dessus je le poste ici.

Hors ligne

#21 Le 15/03/2010, à 18:28

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Ok je te remercie fort bien ;-)

Hors ligne

#22 Le 15/03/2010, à 18:44

no_spleen

Re : C++ - Calcul de la masse volumique de l'air

0.622 est le rapport de la masse molaire de l'eau et de l'air. Sachant cela, l'origine de la formule est facile à retrouver.

Hors ligne

#23 Le 16/03/2010, à 01:32

Le Farfadet Spatial

Re : C++ - Calcul de la masse volumique de l'air

Salut à tous !

ianbox a écrit :

Maintenant, je pense que le sujet peut tout de même intéresser des gens qui aiment l'informatique et la physique ou les maths ou l'automobile, etc ...

De toute façon, difficile, lorsque tu parles de programmation, de ne pas parler de ce que tu veux faire. Pour moi, il n'y a rien de hors-sujet. Cela dit, je fais confiance aux modérateurs pour savoir s'il y a hors-sujet ou non.

je me suis mis au C++ avant-hier

Hé bien, le code que tu as posté n'est pas du C++. Veux-tu faire ton code en C ou en C++ ?

   À bientôt.

   Le Farfadet Spatial

Hors ligne

#24 Le 16/03/2010, à 16:12

ianbox

Re : C++ - Calcul de la masse volumique de l'air

Vraiment ? Pourtant j'utilise code blocks, et j'ai choisi application console, C++ à la création du projet et le code fonctionne...

Hors ligne

#25 Le 16/03/2010, à 16:19

helly

Re : C++ - Calcul de la masse volumique de l'air

ianbox a écrit :

Vraiment ? Pourtant j'utilise code blocks, et j'ai choisi application console, C++ à la création du projet et le code fonctionne...

Un compilateur C++ peut compiler du C
Un compilateur C ne peut pas (forcément) compiler du C++
Voila pourquoi ton code C passe sous un compilateur C++


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne