OutilsMathematiques-L1-2004/2005-DBrito&GLegaut lapremiereseancedutp,soitlasemainedu22novembre2004 Lesreponsesauxquestions1a7sontarendresurpapierlorsde TPinformatiquen5 d'uneequationdierentielle: Resolutionnumerique 2seancesde3heures Applicationalapropagationdechaleur IntroductionetpresentationduTP egalementuniformet=100cal'instantt=0sjusqu'alaprofondeurz=80 kmaucoursdutemps,pourt>0,leblocmagmatiquechaudvaserefroidir kmdeprofondeurestexhumealasurfaceterrestreonsupposeque ceblocpossedeunetemperatureuniformet=825cacetinstantparallelement,onsupposequelatemperaturesouscebloc(cro^uteterrestre)est Onsedonneleproblemesuivantaresoudre:onsupposequ'auninstant donne(parhypotheset=0s)unblocmagmatiquedegranitede11 parconductionsurces80kmenfonctiondutemps?"ouencore, enfonctiondutempsentrecesdeuxcouches \quelestlechampdetemperaturetenfonctiondutempsetdela aucontactdelacro^utefroidedessousdanscetp,onveutetudierquantitativementcommentsepropagelachaleurenfonctiondelaprofondeuret Laquestionprecisequel'onseposeest:\commentlachaleursepropage profondeursurles80km?" informatique)onintroduiranotammentlanotiondeschemanumeriqueexplicite d'achervosresultatsetdelesrepresentergraphiquement dansunprogrammepascal Danslapartie3,onvousguiderapourl'implementationd'untelschema Enn,danslapartie4,onvousdemanderad'ecrirevotreprojetDelphi, unetelleequationdierentiellenumeriquement(al'aided'unprogramme etlaprofondeurz blemeonaboutiraauneequationdierentielleadeuxvariables,letempst leur,onpresenteral'equationaresoudredanslecasparticulierdenotrepro- Danslapartie2,onpresenteraunedesmethodesautiliserpourresoudre Danslapartie1,apresuneintroductiongeneraleal'equationdelacha- 1
1Introductional'equationdelachaleurdans 11Preambuleaucoursdechaleur(modulesL2etL5) {LeconceptdeconductiondechaleurreposesurleprincipededifferencedetemperatureTentredeuxpoints:lachaleuresttoujours Ceconceptnousest\donne"directementparlaloideFourier: conduitedeszonesdehautetemperatureversdeszonesdebasse lacasd'untransfertdechaleurparconduction danslaquelle~qestleuxdechaleurparunitedesurfaceenw/m2 aupointmauntempst,klaconductivitethermiquedumilieuen temperature Wm?1K?1toujourspositive(onyrevientci-dessous)etT(M;t)est lechampscalairedetemperatureaupointmauntempst Cetteloinousditclairementqueleuxdechaleuroutransfert ~q(m;t)=?k??! gradt(m;t) {Parconductiondechaleur,onsous-entendqu'iln'ypasdemouvementdematiere,letranfertdechaleursefaitessentiellementpar gradt(m;t)toujoursoriente dechaleuraupointmesttoujoursorienteverslestemperaturesdecroissantes(orientationduvecteur?k??! verslestemperaturesdecroissantes),end'autretermeslachaleurest toujoursconduitedesmilieuxchaudsverslesmilieuxfroids collisionsatomiques,sansmouvementmacroscopiquedematierepour biendierencierlaconductiondelaconvection(transfertdechaleur avecmouvementdematiere),prenonsunexemplelorsqu'onchaue -soitonn'observepasdemouvementd'eaual'interieurdelacasserole, sentent: unecasseroled'eausuruneplaqueelectrique,deuxcasdeguresepre- {Touslesmateriauxnetransmettentouneconduisentpaslachaleurdela cecas,lachaleuresttransfereeparconvectiondanslevolumed'eau (puiseventuellementevacueedansl'air)uniquementparconduction etdanscecas,lachaleuresttransfereedelaplaqueverslevolumed'eau -soitonobservedumouvementdanslacasserole,l'eaubouillitetdans (puisdansl'air) chaleurquelesmatieresplastiqueslagrandeurcaracterisantletransfertdechaleurdansunmateriauestlaconductivitethermiquek chaleurpardenition, chaleurci-dessous(quiestuncasparticulierdel'equationgeneralede lachaleurdanslequelonneconsiderequedestransfertsdechaleurpar intervenantdanslaloidefourierdansl'equationdediusiondela m^ememaniere,parexemplelesmetauxconduisentbeaucoupmieuxla conduction)c'estladiusivitethermiqueenm2/setnonpasla conductivitethermiquequiintervientpourcaracteriserletransfertde 2
L'equationgeneraledediusiondelachaleurs'ecrit: ouestlamassevolumiquedumateriauenkg/m3etcpestlaquantite d'energieparunitedemassequ'ilfautfournirpouraugmenterde1c lemilieuconsidere =k Cp modulel2pourl'heure,faisonslespremierscommentairessurcetteequationȧ)l'operateurdediusion,lelaplacien Cetteequationvousserademontreeetcommenteeplusendetaildansle @T @t(m;t)=t(m;t) (1) T(M;t)n'estpasegala0aupointMUnlaplaciennonnulsignie trainde\diuser",c'estadiresilelaplacienduchampdetemperature temperaturet(m;t)enunpointmvarie(@t quiveutdirequ'ilexistedesderiveespartiellesdusecondordrenonnulles quelatemperaturen'estpashomogene(ouconstante)dansl'espace,ce @2T @x26=0ou/et@2t L'equationdediusionnousditqu'auntempstdonne,lechampde @y26=0ou/et@2t @z26=0pourlelaplacienencoordonnees @t6=0)silachaleuresten danslemilieu:il\diuse"lachaleurausenspropredutermeeneet,si lechampdetemperature,c'estadirereduirelesdierencesdetemperature cartesiennesparailleurs,l'operateurdediusionapoureetd'homogeneiser onlaissediuseruneanomaliedetemperaturedansunmilieu\assezlongtemps",l'etatnalthermiquedumilieuestunetemperatureconstanteeperaturesontnon-nulles(t6=0)suiteauchauage,l'anomaliechaudede blocsurunedesfacesavecunbriquetalanduchauage,ilexisteune anomalieduchampdetemperaturetresfortedanslevoisinagedupointou l'onachaue,ielesderiveesspatialesdesecondordreduchampdetem- toutpoint blocplusfroidetd'autrepartdiusedumetalversl'airenvironnantplus temperaturesurunedesfacesdublocdiused'unepartdanslevolumedu Exemple:Prenonsuncubedecuivrede10cmdec^oteetchauonsle froidsionattendsusammentlongtemps,lachaleurcontinueadiuser jusqu'acequeleblocdecuivreaitretrouveunetemperatureconstante(' temperaturedel'airenvironnant) 3
estrapidementdiuseecelaseremarquedansl'equationdediusion:sion sexeuntdanslesecondmembre(tnegatifsilemilieuevacuedela chaleurcardanscecas@t Plusladiusivitethermiquedumilieuestgrandeetpluslachaleur b)ladiusivitethermique diusivited'unboisquelconque:sionchaueunvolumedonnedeboiset estgrand Exemple:Ladiusivitethermiqueducuivreestbienplusgrandequela decuivrealam^emetemperaturepuisonarr^etebrusquementlechauage,la chaleurdiuserabeaucoupplusrapidementducuivreversl'airquedubois versl'air:letransfertdechaleurserabeaucoupplusecacedanslecasdu @t<0),plusestgrandetplusletermejtj cuivrequedanslecasduboisc'estpourcetteraisonquel'onditquele cuivreestunexcellentconducteurthermique Onconstatequec'estlecoecientdediusionthermiquequicontr^ole letransfertdechaleurdansunproblemedeconductionthermique;c'est c)ordredegrandeurdansl'equationdechaleur luiquiquantielavariationdetemperatureenunpointparrapportala Onpeutreecrirel'equationdelachaleursouslaformesuivante: retrouvefaceauneequationdecetypelaplut^otquederesoudrecompletementl'equation(cequipeut^etrefastidieuxetnecessiterunordinateur commedansnotretp),onfaituncalculd'ordredegrandeur:ondit que@testproportionnelaunepetitedierencedetemperaturet0,@test proportionnelleauntempst0ettestproportionnelleaunedierencede nirdesderiveesspatialesdusecondordre)onpeutdoncreecrirel'equation delachaleurenordredegrandeur: temperaturequediviseunedistanceaucarrel20(carlelaplacienfaitinterve- diusiondechaleurilexistebeaucoupdesituationenphysiqueouonse @T @t(m;t)=t(m;t)= t0pournotresysteme,unelongueurcaracteristiquel0etladiusivite Onseretrouvedoncavecunerelationliantuntempscaracteristique @T @t(m;t)=t(m)=)t0 )L20 t0/t0=t0 L20/ leurenutilisantlesgrandeurscaracteristiquesdusysteme ordresurletempsdepropagation(ouladistancedepropagation)delacha- thermiquecetterelationestfortutilepourfairedescalculsdepremier Soit:uneanomaliedetemperatureouunchangementdetemperatureT0 (quellequesoitlavaleurdel'anomalie!)mettrauntempsdel'ordredel20= secondes(verierquel20=estbienhomogeneauntemps)pourparcourir Commentutilisercetterelation?dedeuxmanieres: 4
D'apresnotrecalculd'ordredegrandeurl'anomaliedetemperaturedevrait enuntempst0dansunmilieudediusivite l'unedesfacesladiusivitethermiqueducuivrevaut=1:210?4m2=s Soit:uneanomaliedetemperatureouunchangementdetemperatureT0 (quellequesoitlavaleurdel'anomalie!)sepropagerasurunedistancept0 Exemple:Preneztoujoursunblocdecuivrede10cmdec^oteetchauez-lesur unedistancel0dansunmilieudediusivite \atteindre"lafaceopposeducubedecuivreenl20 12L'equationdediusionaresoudre Veriezvous-m^emelapertinencedececalculd'ordredegrandeurenchauffantd'unc^oteetenmettantvotremainsurlec^oteopposedublocdecuivre! =0:12 Dansleproblemeposedansl'enonce,l'equationgeneraledediusionde 1:210?4'88secondes lachaleursereduita: tempst,estladiusivitethermiquedumilieuenm2=spoursimplier l'equationgeneraledediusion(1)etaboutira(2),onafaitl'hypothese qu'iln'yapasdegradientshorizontauxdetemperaturefaisantintervenirles coordonneesxetyonseretrouvedoncavecl'equationdelachaleuraune outestlechampdetemperatureencaupointm(profondeurz)au @T @t=@2t @z2 (2) dimensionz(profondeur) dedonneessupplementaires: Pourresoudrecompletementleproblemedublocmagmatique,onabesoin {Lesdiusivitesthermiquesdesdeuxmilieux m2=slorsquelatemperatureensonseinestinferieurea725cet Leblocmagmatiqueaunediusivitethermique=910?7 Question1Quesigniecetteconditiondeuxnulensurface?Dansquelle {Lesconditionslimitesthermiquesduproblemeaz=0etz=80km =4:510?7m2=slorsqueT725C directionestconduitetoutelachaleurprovenantdubloc?estcequecetteconditionestbienrealiste? constantequellequesoitlatemperatureetvaut=8:3310?7m2=s Ladiusivitethermiquedelacro^uteterrestresousleblocest Alaprofondeurz=80km,onsupposequelatemperatureest Onsupposequeleuxdechaleurensurfaceaz=0kmestnul l'onchoisitdesdiusivitesthermiquesdierentesentreleblocetlacro^ute Leproblemeposeestschematisesurlagure1 N:B::Onnepeutpasresoudreanalytiquementceproblemedeslorsque C8t constanteaucoursdutemps,c'estadirequet(z=80km,t)=100 5
Noussommescontraintsdanscecasderecouriraunesolutionnumerique (ouinformatique)κ=9 10 q(z=0,t)=0 pour tout t Bloc magmatique, T=825 a t=0-7 -7 si Τ< 725, κ = 45 10 si Τ> 725 11 km Fig1{Problemearesoudre T=100 a t=0 κ=833 10-7 Croûte terrestre T(z=80,t)=100 pour tout t 80 km temps al'aideduquelnouscalculonsl'evolutiondelatemperatureenfonctiondu 21Presentationduschemaexplicite 2Leschemanumerique Rappelonsl'equationaresoudre Pourresoudreceproblemenousutilisonsunschemanumeriqueexplicite Z Taylord'unefonctionaunevariableautourd'unpoint(voircoursL1) Soit, Nousintroduisonsunschemanumeriqueal'aidededeveloppementsde T(t+dt)=T(t)+@T @t=@2t =T(t)+@2T @tdt+o(dt2)(voirgure2) @z2 champt (z+dz)apartirdelavaleurdetaupointzetlesderiveesspatialesdu Dem^emeonpeutecrirelavaleurduchampdetemperatureaupoint @z2dt+o(dt2) (3) T(z+dz)=T(z)+@T @zdz+12@2t 6@z2(dz)2+16@3T @z3(dz)3+o(dz4)(4)
T T(t+dt) T(t) Question2EcrirecedeveloppementdeTayloraupointT(z-dz)Additionner Fig2{LavaleurdelatemperatureTautempst+dtestbaseesurla T(z+dz)etT(z-dz)etendeduireuneegaliteentre@2T valeurdeladerivee@t @taupointtlavaleurdetautempst+dtestegalea dt expressioncomposeedet(z+dz),t(z-dz),t(z),dz lavaleurdetautempstplusdtquemultiplielecoecientdirecteurdela Apartirdecetteegalite,reutiliserl'equation(3)pournalement tangentedetautempst,aunepetiteerreurpresdel'ordrededt2 O obtenir @z2etune t t+dt t T(z;t+dt)=T(z;t)+@2T informatiquepourresoudrel'equationdelachaleur C'estleschemanumeriquequenousallonsutiliserdansnotreprogramme Ilestimportantdecomprendrequ'enutilisantcetteexpression,on @z2=t(z;t)+"t(z+dz;t)?2t(z;t)+t(z?dz;t) dz2 #dt(5) (t+dt)solutiondel'equationdelachaleur(2)apartird'unepart calculeaupointmalaprofondeurzlatemperaturetautemps delatemperatureautemps(t)enmetd'autrepartduchampde temperatureauxpointsvoisinsdem(enz+dzetz-dz)autemps illustresurlagure3 tceschema,faisantintervenir4pointsounoeuds(voirplusloin),est d'autresschemasnumeriques,lesschemasimplicitesparexemple) explicitementduchampdetemperatureautemps(t)(cen'estpaslecas Ceschemaestditexplicitecarlatemperatureautemps(t+dt)depend 7
T(z,t+dt) t+dt 3CommentimplementeruntelschemanumeriquedansunprogrammePascal apartirdelavaleurdetenzautempst,delavaleuraupointz-dzautemps Fig3{LavaleurdelatemperatureTaupointzautempst+dtestobtenue tetdelavaleurenz+dzautempst t dz t Procedonsparetapes: z Etape1:Lemaillage T(z-dz,t) T(z,t) T(z+dz,t) derniertempstchoisipournotrecalculcemaillageestschematisesurla profondeurzde0a80kmetenordonneesletempsapartirdet=0jusqu'au quent,ondenitunmaillagecouvrantledomaineentempsetenespace oul'onveutcalculerlasolution;c'estundomaineoul'onaenabscissela Lechampdetemperaturescalairequel'onchercheacalculerdependdu gure4:enabscisse,onalaprofondeurzavecnz+1pointstelquenzdz (dzetantladistanceentredeuxpointsdumaillage,appelelepasd'espace) tempsetdel'espace,soitt(z;t)unefonctiondedeuxvariablesparconse- appliqueleschema(5),onprogressed'unpoint(ounoeud)dansladirection dumaillage,appelelepasdetemps)=tsecondes,ladureetotaledenotre =80kmCelafaitdoncNzintervallesEnordonnees,onaletempstavec Nt+1pointstelqueNtdt(dtetantl'intervalledetempsentredeuxpoints desvaleursduchamptautempst=0(axedesabscissessurlagure4)a schemaexplicite(5)achaqueiterationentempsdansnotrecalcullorsqu'on Ilfautbiencomprendrequedansnotrecalculoncommencerapardonner (Ot)surlagure4 calcul chaqueprofondeurz,puisenappliquantleschemaachaquepasdetemps, Enchaquepointounoeuddumaillage,oncalculelatemperatureal'aidedu onprogresseradeligneenlignedansnotremaillage,verst>0 Ladeuxiemeetapeconsisteainitialisertouteslesvariablesdenotreprobleme(parinitialiser,onentenddonnerdesvaleursauxvariablesavantde commenceracalculer)onecritdonclechampdetemperatureentoutpoint del'espaceautempst=0s(commeonl'avudansl'etape1)etdepluson z=80kmcesconditionslimitessontdetailleessurlagure4 specielesconditionslimitessurlesbordsdenotremaillage,i:e:enz=0et Etape2:Initialisation 8
t Nt condition limite condition limite en temperature en temperature en z=0 km en z=80 km q(0,t) = 0 o T(80,t) = 100 C pout tout t pout tout t Question3Pourquoiest-ilfondamentald'apresleschemanumeriqueutilisede (Nz+1)pointsounoeuds Fig4{MaillageentempsetenespaceCemaillagecomporte(Nt+1) sedonnerdesconditionslimitessurlepremierpointdumaillage 3 dt 2 1 detemperatureencespoints? sionvoulaitcalculeravecleschemaexplicitelavaleurduchamp z=0etledernierpointz=80km?aquelproblemeseheurterait-on 0 1 2 Nz t=0 0 z Etape3:Applicationduschema dz z=0),etaudernierpointdumaillageenz(puisqu'onaconsidereunevaleur Pourladerniereetape,onappliqueleschemaexpliciteatouslespointsdela grilleexceptesaupremierpointdumaillageenz(puisqueleuxestnulen etentempsquisatisfontlarelationdt<12(dz)2 les3etapesdecritesci-dessus constantedetencepointaucoursdutemps) Remarque:pourlastabiliteducalculondoitprendredespasenespace Lagure5donnel'algorithmeautiliserdansnotreprogrammebasesur Question4JustierpourquoiunuxnulensurfacerevientaecrireT[0,t]=T[1,t] 8tdansl'algorithmedelagure5Endeduirepourquoiilestinutiledecalculerlavaleurduchampdetemperatureenz=0 Question5EcrireenPascalleprogrammeassocieal'algorithmedelagure 5 9
CHOISIR DEFINIR ECRIRE Nz, le nombre de point du maillage en z Nt, le nombre d iteration pour le calcul en temps -->cela fixe (dt) et (dz) tels que (dt) < (1/2)/(dz)**2 un tableau T[z,t] / x couvre [0Nz] / t couvre [0Nt] T[z,0] = 825 pour z [011] T[z,0] = 100 ailleurs T[Nz,t] = 100 quel que soit t Etapes 1 et 2 t=0 T[0,t] = T[1,t] OUI T[z,t] < 725 NON t=t+dt kappa=9 10-7 kappa=45 10-7 z=z+dz calculer T[z,t+1] z>11 NON Etape 3 Fig5{AlgorithmedeprogrammationduTP5 OUI kappa=833 10-7 calculer T[z,t+1] pour z [1180] 10 NON t>nt OUI FIN
41Lesobjetsduprogramme 4ProgrammationduprojetDelphi {UnobjetMenu(objetMainMenu)aveclapossibilitedeQUITTER, {UnobjetMemooul'onvaacherlesparametreschoisisetlesresultats Nousutilisons3objetsdansleprogramme: {UnobjetImage(danslabibliothequeSupplement)ouserontrepresentesgraphiquementlesresultatsducalculadierentstemps ducalcul(ajouterl'optionscrollbardansl'inspecteurd'objetpour pouvoirregardertoutelafen^etrememoenvertical) CALCULER,DESSINER Share 42Programmationdel'algorithmesousDelphi 421Programmationdesetapes1et2 Remarque:Vouspouvezregarderunexempledecorrigedanslerepertoire Question6Quelleestalorslavaleurmaximalededtpermised'apreslaconditiondestabiliteduschemanumerique?(Prenezladiusivitedela Pourcommencer,onchoisitunpasdz=1km=1000mdetellesorte quenz=80sil'oncouvreundomainede80kmdeprofondeur(nzdz=80 cro^utepourcecalcul) km)lemaillageenzcomportedonc81points Question7Trouverapproximativementcombiendetempsdoit\durer"notre calculpourquelachaleurdublocmagmatiqueaiteuletempsde diuserjusqu'alaprofondeurz=80km,graceauncalculd'ordre vosreponsesauxquestions6)et7)!!) secondes!!),nz=80,nt=3000sicelacorrespondapproximativementa EndeduireNtbasesurledtdelaquestion6) degrandeuraveclavaleurdeladiusivitedelacro^uteterrestre etl'epaisseurtotalecommelongueurcaracteristique(l0=80km) -unedeclarationdevariablesglobales -unedeclarationdeconstantesglobales Leprogrammeauraclassiquement: (Onpourraprendreparexemple,dz=1000,dt=15000ans(aconvertiren endroitdanslacheobjetpourlafaireappara^tredansl'unitepascal), X=profondeur(z),Y=temperatureT(z,t)etoudierentescourbesT(z,t) (procedurerepresentantlesresultatsdel'integrationnumeriquesurungraphe Tform1:Quitter1Click(pourquitterleprogramme),Tform1:Calcul1Click dureexecuteedeslandelacompilation,double-cliquezan'importequel (procedureaprogrammeravecleschemaexplicite),tform1:dessin1click -4procedures:Tform1:create(initialisation;remarque:c'estuneproce- 11
sontdessineesadierentstempsdecalcult,voirparagraphe43) choixdedzetdtenfonctionducriteredestabilite proceduretform1:create,enparticulierl'initialisationdutableaut[,]etle dedessin)lesautrest^achesdesetapes1et2seronteectueesdansla serontdesvariableslocalesouglobales(avousdevoir,penseralaprocedure entreesespaceettemps,attentionauxdimensionsdutableau),dt;dz;;z;t NzetNtserontrentreescommeconstantes,T[,](tableaudereelsadouble programmeconvertissantuneanneeensecondesand'allegerlaprogrammation etacherlesvaleursdedtetdzchoisies Remarque:Ilserainteressantdedeniruneconstanteglobaledansle Rajouteruntitredanslafen^etreMemo\Refroidissementparcontact" 422Programmationdel'etape3 auntableaut[i,n]tn+1 Ecrirelesbouclesenzettduschemanumerique onremplitletableaut[,]aveclesvaleursdelatemperatureauxdierentes Leschemanumerique(5)peutsereecrireennotationindicielleadaptee profondeursetauxdierentstemps Enecrivantcesbouclesetenderoulantleschemanumeriqueexplicite, S'assurerdu\boncomportement""ducalculenachantl'evolutiondeT[,]acertainesvaleursdezdansl'objetMemo(S'inspirer del'exempledecorrectiondansshare) i=tn i+"tn i+1?2tn dz2 i+tn i?1#dt utiliserlasyntaxesuivante: valeursdutableaut[,]pourtoustettouszsontstockeesdanslamemoire dutableaut[,]etaacherleurscontenusdansmemoeneet,toutesles del'ordinateurdeslandelaboucledecalcul(c'estl'avantagedestableaux) Delphi:Pourselectionnercertainesvaleursdansuneboucle,vouspourrez Remarque:Realisercetachagerevientaselectionnercertainesvaleurs end; begin commandepascal; fori:=0to100doifiin[10,20]then 12
431Representationdansl'objetImagedesprolsdetemperature 43RepresentationdesresultatsdansunobjetImage dessindutp4,dansl'ordre: -denirdes\vecteursunitaires"pourl'axedesabscissesetdesordonnees -denirlatailledel'image,hauteur,largeur,introduiredesmarges Laprocedurequevousallezprogrammerseratresprochedelaprocedurede phiquementvosresultats CommedansleTP3etleTP4,ilvousestdemandederepresentergra- typetrect -dessinerleproldetemperatureinitialautempst=0 -dessinerdesprolsadierentstempsdecalculenutilisantlesvaleursdu lescommandesbrushcolor:=clyellow;fillrect(r);ourestrunrectanglede -dessinerlesgraduationssurlesaxes -titredelagure -colorierleblocmagmatique(voirexempledansshare)avecparexemple 44Representationdansl'objetImagedesmaximade tableaurempliesdanslaproceduredecalcul fondeurdonneeenfaisantvarierletempsrepresenterlesmaximaavecdes rectanglesrougesachaquez faudraecrireunebouclerecherchantlavaleurmaximaledet[,]aunepro- lesmaximadetemperatureachaqueprofondeurz>11kmpourcelail EcrireuneboucledanslaprocedureDessin1clickdestineearepresenter temperaturepourchaqueprofondeurz 13