{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapitre 3\n", "## Exercice 46 p 76 : Détermination d'une composition finale d'un système par un outil numérique \n", "**Niveau INITIATION**\n", "\n", "Programme permettant de determiner l'état final d'un système siège d'une transformation chimique considérée comme totale \n", "ainsi que l'avancement maximal de la réaction d'équation $~~2~R_1 + R_2 \\rightarrow P_1 + 3~P_2 ~~$ à partir de l'état initial connu : $n(R_1)_i = 3,0~\\text{mol}$; $n(R_2)_i = 2,0~\\text{mol}$; $n(P_1)_i = n(P_2)_i = 0~\\text{mol}$.\n", "\n", "**Initialisation des données :**" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "a=...à compléter... # Affecte la liste des nombres stoechiométriques associés aux réactifs\n", "b=...à compléter... # Affecte la liste des nombres stoechiométriques associés aux produits\n", "nR=...à compléter... # Affecte la liste des quantités initiales des réactifs\n", "nP=...à compléter... # Affecte la liste des quantités initiales des produits\n", "x=...à compléter... # Initialise l'avancement\n", "dx=...à compléter... # Affecte l'intervalle d'avancement" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Simulation de l'avancement progressif de la transformation :**" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "while nR[0]>0 and nR[1]>0: # Tant que les quantités des deux réactifs restent strictement positives...\n", " x+=...à compléter... # ... l'avancement augmente de dx\n", " nR[0]-=...à compléter... # ... n(R1) diminue \n", " nR[1]-=...à compléter... # ... n(R2) diminue\n", " nP[0]+=...à compléter... # ... n(P1) augmente\n", " nP[1]+=...à compléter... # ... n(P2) augmente" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Affichage des résultats :**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Affichage de la valeur de l'avancement final, maximal :\n", "print(\"Si la réaction est totale, alors xf = xmax =\",'{:.2f}'.format(x),\"mol.\")\n", "\n", "# Affichage des quantités restantes en chacun des réactifs :\n", "...à compléter...\n", "...à compléter...\n", "\n", "# Affichage des quantités formées en chacun des produits :\n", "...à compléter...\n", "...à compléter..." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.1" } }, "nbformat": 4, "nbformat_minor": 2 }