Innføring i RESERVOARSIMULERING
|
|
|
- Gorm Bjørn Rønningen
- 10 år siden
- Visninger:
Transkript
1 Innføring i RESERVOARSIMULERING Svein M. Skjæveland og Jann-Rune Ursin Høgskolen i Stavanger August 2001
2 Innhold I Teoretisk grunnlag 1 1 Opplegg Undervisningsopplegg Fagligomfang Litteratur Fontkonvensjon Fortranversjon Diffusivitetsligningen Darcy s lov og massebevarelse Generell diffusivitetsligning Kommentar til utledning av diffusivitetsligningen Diffusivitetsligning for tre faser Numerisk formulering Tilnærming av deriverte Avstandsderiverte i diffusivitetsligningen Diskretisering i tid og rom Valg av numerisk formulering Eksplisitt formulering Implisitt formulering Iterativ løsningsmetode Direkte løsningsmetode Skisse til flytskjema for utlevert program II Fortrankode for utlevert program Module felles-matriser Modulenrtype Datafil Resultatfil i
3 Del I Teoretisk grunnlag 1
4 Kapittel 1 Opplegg 1.1 Undervisningsopplegg Dette kompendiet dekker pensum i faget TE 6192 Reservoarsimulering, innføringskurs ved Institutt for petroleumsteknologi. Undervisningen er praktisk lagt opp med øvinger på datamaskin. Etter en kortfattet gjennomgåelse av det teoretiske grunnlaget blir det utdelt et fortran-program som simulerer enfasestrøm i en dimensjon. Programkoden blir gjennomgått systematisk. På dette grunnlag skal hver student utvikle sin egen simuleringsmodell ved å utvide den utdelte modellen gjennom øvingsoppgavene. Noen av oppgavene vil være obligatoriske og skal leveres inn for godkjenning. I de første ukene blir det forelesninger i 4 timer per uke, inntil det teoretiske grunnlaget er gjennomgått. Deretter vil det bli delt ut en ny øving hver uke. Denne blir gjennomgått med forslag og hint til løsning i løpet av 2 forelesningstimer. De resterende to undervisningstimene benyttes til veiledning på terminalrommet. Det reserveres tid på datarommet for hver student tilsvarende en formiddag per uke, men ellers er det åpent for den enkelte å benytte datamaskinene etter behov. 1.2 Faglig omfang Det tas utgangspunkt i en simuleringsmodell (et fortran-program) som løser numerisk den differensialligningen som styrer horisontal strøm av en fase i en dimensjon. Reservoaret har uniforme egenskaper, og den numeriske formuleringen som løser differensialligningen er av enkleste slag. Del I av kompendiet omhandler det teoretiske grunnlag for denne ligningen. I Del II inngår fortran-koden med inngangsfil og resultatfil. Følgende emner vil bli behandlet på denne måten, så langt tiden rekker: 1. Utprøving av utlevert program. 2. Automatisk tidsstegsregulering 2
5 KAPITTEL 1. OPPLEGG 3 3. Sammenligning med analytisk løsning. 4. Ulike numeriske formuleringer og løsningsmetoder. 5. Varierende blokklengde, permeabilitet og porøsistet. 6. Hellende reservoar. 7. Radiell strøm. 8. Tabellbruk. 9. Strøm av en fase i to dimensjoner. 10. Strøm av to faser i en dimensjon. 11. Måling av relative permeabiliteter. På siden vil en finne en peker til faget med blant annet Siste Nytt, eksamensoppgaver og utkast til noen løsninger, samt annen informasjon. 1.3 Litteratur Som støttebok anbefales boken til Aziz og Settari [1]. Det kan ellers kanskje svare seg å ha tilgang på en håndbok i fortran90 og eventuelt lærebøker i numeriske metoder, selv om dette neppe er nødvendig. Se ellers pekere på hjemmesiden til faget. På biblioteket er det konferanserartikler fra de siste symposiene i numerisk reservoarsimulering. Der vil en få inntrykk av hvilke problemstillinger som er aktuelle innen denne grenen av petroleumsteknologi. Dessuten er det publisert mange simuleringsstudier i den ordinære petroleumslitteraturen. Society of Petroleum Engineers har stått for utabeidelsen av en monografi om reservoarsimulering. Redaktørene Mattax og Dalton [2] sammen med andre bidragsytere har gitt et godt sammendrag av hva reservoarsimulering dreier seg om. 1.4 Fontkonvensjon Et kompendium som dette bør i hovedsak holde seg til tre typer fonter. Vanlig tekst skrives som dette. Latinske bokstaver som brukes som matematiske symboler skrives med kursiv: abc. I tillegg vil vi få bruk for å angi fortran-kode. Variable og utsagn i FORTRAN skrives med skrivemaskintyper som følger: if (oxmin.lt. 0.d0) oxmin = 0.d0. det er forsøkt å velge fortran variabelnavn som er lette å huske, som ligner på det matematiske symbolet for samme variable. for eksempel brukes po for oljetrykket p o.
6 KAPITTEL 1. OPPLEGG Fortranversjon Kurset gjennomføres i Fortran90 (F90) som har F77 som en ekte delmengde. Programvaren som blir brukt er Compaque Visual Fortran. Programmet har god hjelpefunksjon for språket generelt og for selve programbruken. Andre innføringsopplegg i F90 vil ligge utlagt på En bør være oppmerksom på at flere av kodeforslagene kan innholde rester etter F77 og det er ikke sikkert at alle vil virke uten videre.
7 Kapittel 2 Diffusivitetsligningen Vi skal utlede diffusivitetsligningen på to litt ulike måter, først ved å starte med Darcy s lov og massebevarelse, og deretter mer direkte fra den generelle diffusivitetsligning. Vi begrenser oss til såkalt beta-formulering. Det vil si at fluidene kan beskrives ved hjelp av de tradisjonelle volumfaktorene B o, R so, B g, R sg, B w, som alle kun er funksjoner av trykket. Dette medfører at modellen er lite egnet til å simulere prosesser i reservoaret dersom det er store endringer i sammensetningen av fasene. Uttrykket betaformulering kommer av at volumfaktorene tidligere ble betegnet med gresk bokstav β. Vi skal starte med lineær, horisontal strøm av en fase i en dimensjon i et reservoar med konstant porøsitet og permeabilitet. 2.1 Darcy s lov og massebevarelse Darcy s lov kan uttrykkes på følgende måte: hvor u o Ck x µ o p o x...(2.1) C : Omregningskonstant med verdi for de gitte enhetene. u o : volumhastigheten, ft/d. k x : absolutt permeabilitet i x-retning, md. µ o : viskositet, cp. p o : trykk, psi. x : avstand langs strømningsretningen, ft. 5
8 KAPITTEL 2. DIFFUSIVITETSLIGNINGEN 6 Indeks o står for olje og er egentlig overflødig før vi tar med strøm av flere faser. Kontinuitetsligningen kan utledes ved å betrakte massestrøm inn og ut av volumelementet V A x i Figur 2.1. q 0 xaρ 0 /b 0 Av 0 ρ 0 Av 0 ρ 0 + (Av 0 ρ 0 ) A x Figur 2.1: Masserate inn og ut av volumelement A x. I Figur 2.1 er det brukt endel nye størrelser: A : tverrsnitt av det en-dimensjonale reservoaret, ft 2. q o : oljerate per bulkvolum, stb/d/bbl. Raten er positiv for injeksjon og negativ for produksjon. Dette er kildeleddet i kontinuitetsligningen [3]. 1 b o : volumfaktor for olje, stb/rb. 2 ρ o : tetthet av olje ved reservoarbetingelser, lb/rft 3. Endring av masse per tidsenhet i volumelementet V på grunn av strøm inn eller ut, samt injeksjon eller produksjon er gitt ved A ρ o u qo xρ o o u o ρ o u o ρ o µµµ...(2.2) b o Masse tilstede i volumelementet er A xφρ o og endring av denne massen per tidsenhet blir t A xφρ oµ...(2.3) 1 Merk at bbl her betegner volumenheten fat av bergartsvolum. 2 Merk at denne definisjonen er den inverse av den vanlige volumfaktoren B o og at rb betegner reservoir barrel av fluid.
9 KAPITTEL 2. DIFFUSIVITETSLIGNINGEN 7 Settes uttrykket 2.2 lik uttrykket 2.3, og antas porøsiteten φ konstant, får en etter litt forenkling xφ ρ o u o ρ qo xρ o o µ t b o Vi deler nå ligningen med x og lar x 0, og får φ ρ o t ρ o u o µ x qoρ o b o Denne ligningen multipliserer vi med b o ρ o som har dimensjonen stb/rb rft 3 /lb 561 stb/lb. Dette er en konstant og kan tas innenfor derivasjonstegnet: b o b o ρ o ρ o u o ρ o ρ o φ qoρ o b o t x b o ρ o som ordnet gir b o u o µ q o φ b o x t...(2.4) Ligning 2.4 er kontinuitetsligningen skrevet på en noe spesiell form med volumfaktor istedenfor tetthet. Det er imidlertid den vanlige framstillingsmåten for β modeller. Ligningen uttrykker bevarelse av overflatevolum av olje. Dette er det samme som massebevarelse når sammensetningen av oljen er konstant. I ligning 2.4 setter vi nå inn for volumhastigheten u o fra ligning 2.1 og får Ckx b o p o q o φ b o x µ o x t Siden vi har antatt at volumfaktoren b o kun avhenger av trykket, kan vi skrive b o b o p o t p o t og dermed Ckx b o p o q o φ b o p o x µ o x p o t...(2.5) Dette er diffusivitetsligningen vi skal løse numerisk. Den gjelder under de forutsetninger som er gitt innledningsvis i dette kapitlet. Ligning 2.5 uttrykker at strøm i x-retning pluss produksjon eller injeksjon er lik ekspansjon eller kompresjon. I den utleverte FORTRAN-koden, som løser ligning 2.5, er det brukt symbolene A2 = φ b o p o og A9 = q o. Enheten til leddet på høyre siden av ligningen, φ b o tµ, er stb/rb/d. Dette er i samsvar med enheten til q o. Dersom en praktisk rate q ¼ o med enhet stb/d blir produsert fra et volumelement V, så blir kildeleddet i ligning 2.5 gitt ved q o q ¼ o V/FPB), hvor FPB = [ft 3 /bbl] og V er i ft 3.
10 KAPITTEL 2. DIFFUSIVITETSLIGNINGEN Generell diffusivitetsligning Den generelle kontinuitetsligning er beskrevet i kompendiet til Papatzacos [3] og i standard tekster i fluidmekanikk, x ρ ou o µ t φρ oµ...(2.6) I tillegg kan det være et kildeledd. Tettheten er gitt ved ρ o b o ρ st o ρstd g R so FPBµ...(2.7) hvor ρo st er oljetettheten ved stock tank forhold i lb/ft3, ρg std er gasstettheten ved standard forhold i lb/ft 3,ogR so er oppløst gass-olje forhold i ft 3 /stb. Ligning 2.7 kan utledes ved å betrakte hvordan en gitt masse m fordeler seg mellom gass- og væskefasen ved reservoarforhold og ved overflateforhold. Ved reservoarforhold er all masse i oljefasen, m ρ or V or, hvor r betegner reservoarbetingelser og V volumet. Merk: Modellen er for enfase strøm. For olje betyr det at trykket i reservoaret må være over kokepunktstrykket for oljen, ellers vil det også være gass tilstede, og da må en bruke tofase-formulering: en konserveringsligning for gassen og en for oljen. Samme masse m kan ved overflaten (indeks s for surface ) uttrykkes ved m V os ρ os V gs ρ gs, hvor V os er tatt ved stock tank forhold og V gs er tatt ved standard forhold på overflaten. Videre er V gs V os R so 561 og b o V os V or. Satt sammen så gir dette ligning 2.7. Vi antar nå igjen at φ er konstant og kan settes utenfor derivasjonstegnet. Setter en inn for ρ o i ligning 2.6 og for u o fra ligning 2.1, så får en x b o ρ st o ρstd g R Ck x p o sofpbµ µ o x φ t b o ρ st o ρstd g R sofpbµ Siden ρo st, ρstd g og R so er konstanter, reduseres dette uttrykket direkte til ligning 2.5. At R so er en konstant følger av at vi betrakter bare en fase, i form av olje. Siden det ikke er fri gass tilstede i reservoaret, må trykket være over kokepunktstrykket, og da er R so konstant. Merk: Oppgave 1 i eksamenssettene fra desember 1995 og desember 1996 gir to eksempler på utledning av diffusivitetsligningen dersom det antas hvordan tettheten avhenger av trykket (tilstandsligning).
11 KAPITTEL 2. DIFFUSIVITETSLIGNINGEN Kommentar til utledning av diffusivitetsligningen La oss betrakte volumet V A x i Figur 2.1. Masseraten ut av volumelementet ved x x er ρ o u o Aµ x x og masseraten inn i volumelementet ved x er ρ o u o Aµx. Differansen må være lik endring av masse per tidsenhet i volumelementet, ρ o u o Aµ x x ρ o u o Aµx t Vφρ o µ...(2.8) t hvor t betyr tidsdifferanse ved konstant x-verdi. Vi deler nå ligningen på V, og lar x og t gå mot null. Da får vi x ρ ou o µ t φρ oµ...(2.9) som i Ligning 2.6 og kan fortsette derfra. Hvordan skal vi få formulert inn en rate i ligningen? Dette kan gjøres på to måter. Dersom vi holder oss til Ligning 2.9, så må raten formuleres som et grensevilkår for en bestem x-verdi. For eksempel kan det bli spesifisert at raten ved utløpet av reservoaret skal ha en angitt verdi. Denne måten brukes generelt når en skal løse en differensialligning analytisk. Den andre måten er å ta utgangspunkt i Ligning 2.8, altså i den diskrete formen. Vi bruker at x er differanseoperator i x med t konstant. Videre så multipliserer og deler vi med x på venstre siden og får, x ρ o u o µ V x t Vφρ o µ... (2.10) t Hvert ledd i denne ligningen har dimensjonen masse/tid. Inn i volumet V sender vi nå en rate q i med dimensjonen masse/tid. Vi har at q i q o V ρ ost R so ρ gstd µ, hvor dimensjonene på q o er overflatevolum olje per tidsenhet per bulkvolum, som definert foran. Vi innfører også ρ o b o ρ ost R so ρ gstd µ i de to andre leddene i ligning Uttrykket for q i kan vi sette rett inn i Ligning 2.10, forkorte bort konstanten ρ ost R so ρ gstd µ og dele på V. Da får vi Ligning 2.4 i grensen at x og t går mot null. 2.4 Diffusivitetsligning for tre faser Uten utledning tar vi her med utvidelsen av ligning 2.5 til strøm av olje, vann og gass i en dimensjon. Vi har da tre diffusivitetsligninger, k ro b o p o Ck x q o φ x µ o x t b os o µ k rw b w p w Ck x q w φ x µ w x t b ws w µ k rg b g p g Ck k ro b o p o x Ck x R so q g φ x µ g x x µ o x t b gs g b o R so S o µ
12 KAPITTEL 2. DIFFUSIVITETSLIGNINGEN 10 og de tre føringsbetingelsene S o S w S g 1 p g p o P cgo p w p o P cow Her står S for metning, P cgo er kapillartrykket mellom gass og olje og P cow mellom olje og vann. Det er også enkelt å ta med ledd som behandler olje oppløst i gassen, slik at en kan simulere et gasskondensat felt med denne β-formuleringen. Funksjonssammenhengene i ligningene er slik at b µr so kun avhenger av trykket, og de metningsavhengige parametrene avhenger av P cow : P cow S w µ k ro : k ro S w S g µ P cgo : P cgo S g µ k rw : k rw S w µ k rg : k rg S g µ Vi skal i første omgang holde oss til ligning 2.5 med begrensningene at b o varierer lineært med trykket gitt ved b o b orig dbdp p o p orig µ, hvor dbdp er konstant og betegner FORTRAN-symbolet for b o p o, og indeks orig betegner startverdi. I tillegg skal vi anta at viskositeten µ o er en konstant.
13 Kapittel 3 Numerisk formulering Diffusivitetsligningen kan løses analytisk kun for enkle geometrier og grensevilkår, og med visse forenklinger. Et eksempel på dette er gitt i en av øvingene. I det alminnelige tilfellet må en begrense seg til numeriske løsninger, og for denne typen partielle differensialligninger finnes det to hovedklasser av metoder: 1. Differansemetoden 2. Elementmetoden Elementmetoden brukes ofte til simulering av statiske belastninger og sjelden til simulering av strøm i et reservoar. Vi skal holde oss til differansemetoden hvor hovedpoenget er at alle deriverte tilnærmes med et forhold mellom differanser. 3.1 Tilnærming av deriverte Ligning 2.5 inneholder deriverte med hensyn på både tid og avstand. I differansemetoden tilnærmes begge som vist under, for en vilkårlig funksjon y xµ framstilt i Figur 3.1. Den deriverte i punktet y x o µx o µ er gitt ved dy dx xxo lim x0 y x o x2µ y x o µ x2 og den tilnærmes numerisk ved hjelp av differanser. Det vil si at vi tilnærmer tangentens stigningsforhold med sekantens på følgende måte dy dx y x o x2µ y x o x2µ y x 2 µ y x 1 µ xxo x x Dette svarer til å ta med kun første ordens ledd i en Taylorutvikling av y xµ omkring punktet x 0. 11
14 KAPITTEL 3. NUMERISK FORMULERING 12 y(x) tangent sekant x 1 x 0 x 2 x x/2 x/2 Figur 3.1: Tilnærming av tangent med sekant. 3.2 Avstandsderiverte i diffusivitetsligningen Vi skal først se hvordan en kan tilnærme deriverte med hensyn på avstanden x i ligning 2.5. La oss dele det en-dimensjonale reservoaret inn i tre numeriske blokker, slik som vist i Figur 3.2. y z z A B y x 1 x 2 x 3 (x 1,p 1 ) (x 2,p 2 ) (x 3,p 3 ) x Figur 3.2: Endimensjonalt reservoar med tre numeriske blokker. I denne figuren betegner x i lengden av numerisk blokk nr. i, x i avstanden til midtpunktet av blokk i og p i trykket ved x i. Merk: Fra og med dette punkt i framstillingen skifter vi notasjon slik at indeks o for olje sløyfes. Vær imidlertid oppmerksom på at variabelen PO brukes til å betegne trykket i den utleverte FORTRAN-kode. La A betegne grensen mellom blokk 1 og 2, og B grensen mellom 2 og 3. Da kan
15 KAPITTEL 3. NUMERISK FORMULERING 13 vi tilnærme de deriverte ved de to grensene på følgende måte dp dx p 1 p 2 p 1 p 2 A x 1 x 2 x 2 x 1 og dp dx p 3 p 2 B x 3 x 2 La oss definere en del hjelpestørrelser før vi går videre i diskretiseringen av ligningen. Vi setter p 2 p 3 p 2 p 2 p 1 p 2 x 2 x 3 x x 2 x 3 µ x 2 x 2 x x 1 x 2 µ x 1 N x2 C N x2 kx b µ x 2 kx b C µ x Notasjonen er her at for en vilkårlig variabel Y betegner Y 2 en verdi tatt ved grenseflaten mellom blokkene 2 og 3, eller en middelverdi mellom blokkene. Størrelsen N x2 representerer midlere strømningskoeffisient eller transmissibilitet mellom blokk 2 og 3. Volumfaktoren b og viskositeten µ kan avhenge av trykket p xtµ, som altså er en funksjon av både avstand x og tid t. Når simuleringsprogrammet flytter seg et tidssteg t fra t til t t, kan en vise at det oppnås god stabilitet og mest korrekte verdier for trykkløsningen dersom det brukes tidsmidlete verdier for b og µ i uttrykket for N x, se avsnitt 3.4. Det vil si at en for volumfaktoren beregnet ved grenseflaten B bruker b b p x 2 t tµµ b p x 3 t tµµ b p x 2 tµµ b p x 3 tµµµ Således blir den b-verdien som inngår i NX-ledd både tids- og avstandsmidlet. Merk: I avsnitt 3.4 blir omtalt hva som menes med implisitt formulering: Verdien av de ukjente trykkene velges ved slutten av tidssteget. For å få en konsistent, fullstendig implisitt formulering må b og µ i N x også beregnes ved slutten av tidssteget. Dette har imidlertid liten praktisk betydning siden b og µ er svakt trykkavhengige for olje.
16 KAPITTEL 3. NUMERISK FORMULERING Diskretisering i tid og rom Vi er nå klar til å diskretisere diffusivitetsligningen 2.5 slik at den kan løses numerisk. I Figur 3.3 har den generelle blokken iµ grenseflaten A mot naboen i 1µ i negativ x-retning og grenseflaten B mot naboen i 1µ i positiv x-retning. i-1 i i+1 A B Figur 3.3: Generell blokknummerering. For å forenkle framstillingen setter vi hjelpestørrelsen Y lik Y Ck xb p µ x og Ligning 2.5 skrives som Y p A9 A2 x t...(3.1) Vi bruker differansemetoden til å diskretisere Ligning 3.1, høyre siden i romlig x- retning, og venstre siden i tid, og får 1 Y B i Y A i p A9 x i A2 i t tµ p i tµ i...(3.2) i t Videre tilnærmes Ckx Y B b p i µ x B Ckx b p µ B x B Ckx b p i µ i x i N xi p i 1 For enkelthets skyld bruker vi fortsatt standard likhetstegn mellom venstre og høyre siden, selv om disse nå er diskretiserte tilnærminger til differensialligningens høyre og venstre side.
17 KAPITTEL 3. NUMERISK FORMULERING 15 og tilsvarende for det andre leddet, Y i A N xi p i Vi definerer nå O xi N xi x i O xi N xi x i som innsatt i Ligning 3.2 gir diffusivitetsligningen på følgende numerisk form O xi p i O xi p i A9 i A2 i p i t tµ p i tµµ t..... (3.3) Det er løsningen av denne simuleringsligningen som er programmert i den utdelte FORTRAN-koden. Programmet er laget med en initialiseringsdel som gir verdi til alle variable ved t 0, og med en tidsstegssløyfe som beregner trykkene i de numeriske blokkene etter et fastsatt nytt tidssteg t, når alle størrelsene i ligningen, inklusive trykkene i hver blokk, er kjent på tidsnivå t. 3.4 Valg av numerisk formulering Alle størrelser som inngår i Ligning 3.3 er kjente på tidsnivå t og simuleringsprogrammet oppdaterer dem til nivå t t. På høyre side av ligningen inngår trykket på begge nivåene som følge av tilnærmingen av den tidsderiverte. Vi har imidlertid hittil ikke angitt på hvilket tidsnivå leddene p i skal evalueres. De tre mest vanlige valgene er angitt i Tabell 3.1. Numerisk formulering eksplisitt implisitt Crank-Nicolson Tidsnivå for p i t t t t t2 Tabell 3.1: De tre vanligste numeriske formuleringer. Før vi går videre trenger vi noen begreper fra numerisk analyse. De vil bare bli omtalt her og interesserte kan se nærmere i boken til Carnahan et al [4] eller andre standardverker i numeriske metoder for utfyllende kommentarer. La oss anta at u er den korrekte, eventuelt analytiske, løsning til en differensialligning, og at v er den tilsvarende numeriske løsning. Diskretiseringsfeilen er gitt ved w u v. Dersom w 0 når x tµ 0, sier vi at den numeriske formuleringen
18 KAPITTEL 3. NUMERISK FORMULERING 16 konvergerer. Dersom differensialligningen i numerisk formulering går mot den opprinnelige differensialligning når x tµ 0, sier vi at den numeriske formuleringen er konsistent med differensialligningen. Dersom den numeriske løsningen v er endelig under hele simuleringen, sier vi at løsningen er stabil, selv om den kan fluktuere eller oscillere mellom tidsstegene. Dersom løsningsrutinen som brukes er iterativ, se avsnitt 3.7, brukes også begrepet konvergens om den trinnvise tilnærming til en endelig verdi for v innen et gitt tidssteg. For de tre formuleringene i Tabell 3.1 kan det vises at følgende egenskaper gjelder eksplisitt er enklest å programmere; trenger ingen løsningsrutine; w O tµ O x 2 µ; blir ustabil når t x 2 12 og er derfor betinget stabil implisitt er ubetinget stabil og blir derfor ofte foretrukket; brukes i simuleringsmodellen ECLIPSE; må ha en løsningsrutine; w O tµ O x 2 µ Crank-Nicolson er også ubetinget stabil, men krever noe mer programmeringsarbeid enn for implisitt formulering; har en tendens til å oscillere rundt den riktige løsning; w O t 2 µ O x 2 µ Merk: Disse uttrykkene for diskretiseringsfeil forutsetter at t og x er dimensjonsløse, det vil si at diffusivitetsligningen er gjort dimensjonsløs før diskretiseringen. 3.5 Eksplisitt formulering Nå velges p i i Ligning 3.3 ved tid t, og er derfor kjente tall. Den eneste ukjente i lingningen er p i t tµ som vi kan finne direkte: p i t tµ t O xi A2 p i tµ O xi p i tµ A9 i µ pi tµ (3.4) i Vi får altså ikke noe lineært ligningssystem med denne formuleringen. Nytt trykk i blokk nummer i finnes nesten uavhengig av trykkene i naboblokkene i 1. Det er en svak kopling via midling til naboblokkene av den trykkavhengige koeffisienten bµ som inngår i N x, se avsnitt Implisitt formulering Her velges p i i Ligning 3.3 ved tid t t. Merk: Vi forenkler nå notasjonen slik at trykk p i tµ er ved tid t, mens trykk p i t tµ betegnes forenklet bare som p i.
19 KAPITTEL 3. NUMERISK FORMULERING 17 Vi bruker definisjonene på p i fra avsnitt 3.2, og setter inn i Ligning 3.3 og får O xi p i 1 p i µ Oxi p i 1 p i µ A9 A2 i i t som rearrangert gir p i p i tµµ A2 O xi p i 1 O i xi O xi t µ p i O xi p A2 i 1 i t Vi definerer følgende hjelpestørrelser p i tµ A9 i B i O A2 xi O xi i t A i O xi B i C i O xi B i D i A2 i t p i tµ A9 i µb i og simuleringsligningen blir A i p i 1 p i C i p i 1 D i...(3.5) Ligningen gir altså et lineært ligningssett med like mange ukjente som numeriske blokker, og hvor ligningen for en blokk avhenger av de ukjente i de to naboblokkene. For å eksemplifisere velger vi et system med fire blokker, slik at i ¾ 1234.Da gir Ligning 3.5 følgende sett av ligninger: 0 p 1 C 1 p 2 D 1 A 2 p 1 p 2 C 2 p 3 D 2...(3.6) A 3 p 2 p 3 C 3 p 4 D 3 A 4 p 3 p 4 0 D 4 som kan skrives som en matriseligning ¼ ½ ¼ 1 C A 2 1 C A 3 1 C A 4 1 eller µ K p t D t hvor koeffisientmatrisen K, µ ¼ µ K 1 C A 2 1 C A 3 1 C A 4 1 ½ p 1 p 2 p 3 p 4 ½ ¼ D 1 D 2 D 3 D 4 ½ (3.7) er en tridiagonal matrise, hvor kun hoveddiagonalen og de to subdiagonalene har ledd forskjellig fra 0.
20 KAPITTEL 3. NUMERISK FORMULERING Iterativ løsningsmetode En ligning av typen 3.7 kan løses iterativt eller direkte, ved eliminasjon. Som vi skal demonstrere senere, i forbindelse med en øving, er direkte metoder å foretrekke for endimensjonale system. Det samme er tilfelle for to-dimensjonale problemer opp til en viss størrelse. I tre dimensjoner derimot blir det selv for små systemer nødvendig å bruke iterative metoder. En moderne, industriell modell som ECLIPSE, for eksempel, har ikke direkte løsningsmetode innlagt. La oss beskrive prinsippet for iterative metoder med et enkelt eksempel, to ligninger med to ukjente: eller 1: x 1 2x 2 5 2: x 1 3x 2 7 1: x 1 5 2x 2 2: x 2 7 x 1 µ3 La k betegne iterasjonstelleren. Prosedyren for Gauss-Jordan s metode er: Start med antatte verdier på både x 1 og x 2. For iterasjonsrunde k 1, beregn samtidig x k x k 2 og xk x k 1 µ3, og forsett inntil konvergens. Prosedyren for Gauss-Seidel s metode er litt anderledes: Beregn først x k x k 2 og deretter xk x1 k 1 µ3. En bruker altså oppdaterte verdier straks de er generert. Denne metoden er lagt inn som en subrutine i det utleverte programmet og reprodusert nedenfor. Iterasjonssløyfen kalles itera, sløyfen for løsing av trykkene i hver blokk kalles pressures. Ligning 3.5 er brukt inne i denne sløyfen. Triggeren isw brukes til å sjekke for konvergens. subroutine gsit(mx,eps) use felles_matriser implicit none Gauss-Seidel subrutine i utlevert program integer :: kkk, i, isw, im, ip, mx, kkkcum real(dp) :: eps itera: do kkk = 1,300 kkkcum = kkk isw = 0 im = 1 pressures: do i = 1,mx
21 KAPITTEL 3. NUMERISK FORMULERING 19 if (i.gt. 1) im = i-1 if (i.lt. mx) ip = i+1 po(i) = a(i)*po(im)+c(i)*po(ip)+d(i) if (isw == 0) then if (dabs(comp(i)-po(i)) > eps) isw = 1 end if comp(i) = po(i) end do pressures if (isw.eq. 0) exit end do itera write (6,"( kkkcum..., i4/)") kkkcum end return 3.8 Direkte løsningsmetode La oss anskueliggjøre hvordan det lineære ligningssystemet 3.6 kan løses ved eliminasjon. Ligningene tenkes nummerert fra 1 til 4 fra toppen og ned. Framgangsmåten er å eliminere p 1 fra andre ligning ved å bruke første ligning; deretter p 2 fra tredje ligning ved å bruke den oppdaterte andre ligning hvor p 1 er fjernet; og til sist p 3 fra fra fjerde ligning. Sammenligner en med ligningen på formen 3.7, så har vi nå endret matriseelementer i K µ slik at det kun er nuller under diagonalen. Lar vi Å betegne et matriseelement som har fått endret verdi, har Ligning 3.7 nå følgende utseende: ¼ 1 C Å C Å C Å ½ ¼ p 1 p 2 p 3 p 4 ½ Fjerde ligning, tilsvarende linje nummer 4 i µ K, innholder nå bare p 4 som ukjent. Denne bestemmes og settes inn i tredje ligning, som da bare har p 3 som ukjent, etc. Prosedyren består altså i to sveip, først nedover for å skaffe nuller under diagonalen, så ¼ D 1 Å Å Å ½
22 KAPITTEL 3. NUMERISK FORMULERING 20 oppover igjen med suksessiv innsetting av funne trykk. Denne algoritmen er lagt inn som en subrutine i det utleverte program, og er reprodusert under. I line 04 betegner al diagonalleddet; videre er s den endrete høyreside av ligningene. En kan merke seg at det kun opereres på ledd i de tre diagonalene i K, µ eller innenfor båndet til denne båndmatrisen. Løsningsrutinen tridia er derfor meget effektiv og trenger lite lagerplass. Subrutine for løsing av lineært ligningssett med tridiagonal koeffisientmatrise subroutine tridia(mx) use felles_matriser implicit none integer :: i, mx, k al(1) = 1 s(1) = d(1) Lager øvre triangulær matrise med kun nuller under hoveddiagonalen. upper_trian: do i = 2,mx al(i) = 1. - a(i)/al(i-1)*c(i-1) s(i) = d(i) + a(i)/al(i-1)*s(i-1) end do upper_trian Løser for trykket i blokk mx po(mx) = s(mx)/al(mx) last pressure Spaserer oppover diagonalen igjen og løser for resten av trykkene. back_subst: do k = 2,mx i = mx - k + 1 po(i) = (s(i)+c(i)*po(i+1)) / al(i) end do back_subst return end subroutine tridia
23 KAPITTEL 3. NUMERISK FORMULERING Skisse til flytskjema for utlevert program INITIALISERING Les data Skriv data Beregn konstante størrelser Initialiser variable Beregn OIP α START TIDSSTEGSSLØYFE Oppdater trykk, POLD = PO β START YTRE ITERASJON, på ulineære ledd, dvs. b µ PEST = PO(1) PO = (PO + POLD)/2 Fluidegenskaper subrutine FLPROP Strømningskoeffisienter subrutine FLOCON Løs ligningssettet med en av subrutinene TRIDIA dersom direkte løsning GSIT dersom iterativ løsning Skriv beregnet trykk dersom IWRITE=1 Beregn E PO(1) - PEST β ¼ SLUTT Dersom E ε: Gå til β Gjør materialbalanse Skriv ut trykk og tidsstegsammendrag α ¼ SLUTT Dersom flere tidssteg: Gå til α STOP ε er innlest toleransekriterium
24 Bibliografi [1] Aziz, K. and Settari, A.(1979). Petroleum Reservoir Simulation, Applied Science Publishers, London. [2] Mattax, C.C. and Dalton, R.L. Reservoir Simulation, SPE Monograph Volume 13, Richardson, TX (1990). [3] Paul Papatzacos, Matematisk Modellering, kompendium i fag av samme navn, Avsnitt 2.2, Høgskolesenteret i Rogaland. [4] Carnahan, B., Luther, H. A., and Wilkes J. O.: Applied Numerical Methods, John Wiley & Sons, New York (1969). [5] Johnson, E.F., Bossler, D.P., and Naumann, V.O.: Calculation of Relative Permeability from Displacement Experiments, Trans. AIME, 1959, 371. [6] Welge, H.J.: A Simplified Method for Computing Oil Recovery by Gas or Water Drive, Trans. AIME, 1952, 91. [7] Kyte, J.R., and Rapoport, L.A.: Linear Waterflood Behavior and End Effects in Water-Wet Porous Media, Trans. AIME, [8] Dake, L.P.: Fundamentals of Reservoir Engineering, Elsevier, New York
25 Del II Fortrankode for utlevert program 23
26 24 program utdelt_sim use felles_matriser implicit none list of real variables in double precision: kx permeabilitet i x-retning, md nt oljevolum tilstede ved et gitt tidspunkt, stb ni oljevolum injisert, stb np oljevolum produsert, stb npc oljevolum produsert i % visorg opprinnelig viskositet, cp dbdp derivert av bo mhp trykk, stb/rb/psi delt1 de 12 første tidssteg er delt1/(1.5**(12-l)), hvor l er antall tidssteg, days eps trykktoleranse, iterasjon på ulineære ledd _og_ i iterativ løsningsrutine, psi dex delta x, ft dey delta y, ft dez delta z, ft fpb cubic feet per barrel, 5.61 pi 3.14 vol dex*dey*dez/fpb, rb volphi vol*phi, rb ckbak konstantleddet i strømningskoeffisientene a2 phi*dbdp ooip original oil in place, stb pest estimated value of po(1), psi qotot total oil rate, stb/day ctim kumulativ simulert tid, days eot total oil error borig original value of bo, stb/rb phi porosity porig original oil pressure, psi delt time step size, days convf conversion factor from Darcy units to oil-field units en 1.d0 to 2.d0 real(dp) :: kx,nt,ni,np,npc,visorg,dbdp,delt1,eps,dez,& dey,fpb,pi,vol,volphi,ckbak,a2,ooip,& pest,qotot,ctim,eot,borig,phi,dex,porig,& delt,convf,en,to
27 25 list of integers stmax number of time steps mx number of numerical blocks isol specify solution method ipe trigger, not in use iskip trigger, not in use iwrite trigger, if equal to 1, intermediat pressures are written i loop counter im i-1 ip i+1 lcysw number of iterations per time step on non-linear terms kcy sum of lcysw l time step counter k loop counter integer :: stmax,mx,isol,ipe,iskip,iwrite,i,im,ip,& kcy,l,k,lcysw open (unit=5,file= res90dat.dat, status= old ) open (unit=6,file= res90out.dat, status= replace ) ** read and write input data write (6,3000) read (5,*) mx, stmax, isol, ipe, iskip, iwrite allocate (& ) a(mx),c(mx),d(mx),al(mx),s(mx),comp(mx),po(mx),& pold(mx),oxplus(mx),oxmin(mx),a9(mx),qo(mx),bo(mx),x(mx)& write (6,3010) mx, stmax, isol, ipe, iskip, iwrite read (5,*) kx, phi, dex, porig, borig read (5,*) visorg, dbdp, delt1, eps, dez read (5,*) dey write (6,3020) kx, phi, dex, porig, borig, visorg, & dbdp, delt1, eps, dez, dey read (5,*) (qo(i),i = 1,mx) write (6,3030) (i,qo(i), i = 1,mx) write (6,3080) ** begin calculations; initialize variables
28 26 fpb = d0 pi = d0 convf = en = 1.d0 to = 2.d0 oxplus(mx) = 0 oxmin(1) = 0 delt = 0 ni = 0 np = 0 ctim = 0 kcy = 0 vol = dez*dey*dex/fpb volphi= vol*phi ckbak = convf*kx/dex/visorg/dex a2 = phi*dbdp ooip = 0.0 x(1) = dex/to pressure_points:& do i = 2,mx im = i -1 x(i) = dex + x(im) end do pressure_points write (6,3040) (i,x(i),i=1,mx) write (6,3080) po qo a9 pold = porig = qo /vol = qo = porig ooip_in_place:& do i = 1,mx ooip = ooip + volphi * borig end do ooip_in_place time_step_loop:& do l = 1, stmax
29 27 pold = po lcysw = 0 if (l <= 12) delt = delt1/1.5**(12-l) write (6,3070) cc start iteration loop on unlinear variables i.e. bo 7744 continue pest = po(1) kcy = kcy + 1 po = (po + pold)/to call flprop(mx,porig,dbdp,borig) call flocon(mx,delt,a2,ckbak) select case(isol) case(1) call tridia(mx) case(2) po = to*po - pold comp = po call gsit(mx,eps) end select if (iwrite == 1) then write(6,3050) (i,po(i), i = 1,mx) write(6,3080) end if lcysw = lcysw + 1 check_convergence_of_nonlinear_term:& if (& dabs(po(1)-pest) > eps &.and. & lcysw < 4) then
30 28 goto 7744 end if check_convergence_of_nonlinear_term start material balance ctim = ctim + delt nt = 0 qotot = 0. call flprop(mx,porig,dbdp,borig) matbal:& do i = 1,mx nt = nt + volphi * bo(i) if (qo(i).gt. 0.) ni = ni+qo(i)*vol*delt if (qo(i).lt. 0.) np = np-qo(i)*vol*delt if (qo(i).lt. 0.) qotot = qotot-qo(i)*vol end do matbal eot = (-ni+np+nt-ooip)/(ooip+ni)*100 npc = np/ooip*100 if (iwrite /= 1) then write (6,3050) (i,po(i),i=1,mx) end if write (6,3060)l,ctim,np,delt,kcy,ni,nt,qotot,eot,npc end do time_step_loop ** close files close (5) close (6) ** format statements 3000 format (& ***** one dimensional, one phase simulator ***** /& //&
31 29 basic assumptions of this model include: //& - horizontal flow of a compressible fluid /& - pressure dependent volume factor /& - pressure independent viscosity /& - homogeneous rock properties, that is the same /& porosity and permeability in all blocks. /& - flowing fluid is undersaturated oil //) 3010 format (& number of blocks in x-direction, mx... :, i3 /& maximum number of time steps, stmax... :, i3 /& solution method used, isol... :, i3 /& ipe... :, i3 /& iskip... :, i3 /& write option, iwrite... :, i3 //) 3020 format (& horizontal permeability, kx, md... :, f12.4/& porosity, phi, fraction... :, f8.4 /& delta length (x-dir), dex, ft... :, f10.2/& original oil pressure, porig, psia... :, f10.1/& original oil fvf, borig, std vol / res vol... :, f10.4/& original oil viscosity, visorg, cp... :, f10.4/& oil fvf pressure derivative, dbdp,, /& std vol/res vol/psi... :, f10.8/& time increment, delt1, days... :, f10.6/& pressure tolerence, eps... :, f8.5 /& block width, dez, ft... :, f8.1 /& block thickness, dey, ft... :, f8.1 //) 3030 format (& block no. :, i3, oil rate, qo, stb/d..., f10.1) 3040 format (& block no. :, i3, pressure point, x(i), ft, f8.1) 3050 format (& block no. :, i3, oil pressure, psia..., f12.3) 3060 format (2x, steps=,i4,t22, time=,d12.4,t43, np=,d12.4/2x,& delt=,d12.4,t22, cum cycle=,i4,t43, ni=,d12.4/2x,&
32 30 nt=,d12.4,t22, qotot=,d12.4,t43, cum oil error=,d12.4/2x,& npc=,d12.4) 3070 format (25( ***** )/) 3080 format (/) stop end **************************************************************** * end of main program **************************************************************** **************************************************************** * subroutine tridia **************************************************************** subroutine tridia(mx) use felles_matriser implicit none integer :: i, mx, k al(1) = 1 s(1) = d(1) upper_trian: do i = 2,mx al(i) = 1. - a(i)/al(i-1)*c(i-1) s(i) = d(i) + a(i)/al(i-1)*s(i-1) end do upper_trian po(mx) = s(mx)/al(mx) last pressure back_subst: do k = 2,mx i = mx - k + 1 po(i) = (s(i)+c(i)*po(i+1)) / al(i) end do back_subst return end subroutine tridia **************************************************************** * end of subroutine tridia ****************************************************************
33 31 **************************************************************** * subroutine gsit **************************************************************** subroutine gsit(mx,eps) use felles_matriser implicit none integer :: kkk, i, isw, im, ip, mx, kkkcum real(dp) :: eps itera: do kkk = 1,300 kkkcum = kkk isw = 0 im = 1 pressures: do i = 1,mx if (i.gt. 1) im = i-1 if (i.lt. mx) ip = i+1 po(i) = a(i)*po(im)+c(i)*po(ip)+d(i) if (isw == 0) then if (dabs(comp(i)-po(i)) > eps) isw = 1 end if comp(i) = po(i) end do pressures if (isw.eq. 0) exit end do itera write (6,"( kkkcum..., i4/)") kkkcum return end **************************************************************** * end subroutine gsit ****************************************************************
34 32 **************************************************************** * subroutine flprop **************************************************************** subroutine flprop(mx,porig,dbdp,borig) use felles_matriser implicit none integer :: mx, i real(dp) :: porig,dbdp,borig bo = borig + (po - porig)*dbdp return end subroutine flprop **************************************************************** * end subroutine flprop **************************************************************** **************************************************************** * subroutine flocon **************************************************************** subroutine flocon(mx,delt,a2,ckbak) use felles_matriser implicit none integer :: mx,i,im real(dp) :: delt,a2,ckbak,b oxp: do i = 2, mx im = i-1 oxmin(i) = ckbak*(bo(i)+bo(im))/2 oxplus(im) = oxmin(i) end do oxp acd: do i = 1, mx b = oxmin(i)+oxplus(i)+a2/delt a(i) = oxmin(i)/b c(i) = oxplus(i)/b d(i) =(a2/delt*pold(i)+a9(i))/b end do acd return end subroutine flocon **************************************************************** * end subroutine flocon
35 33 **************************************************************** 3.10 Module felles-matriser Module felles_matriser use nrtype integer, parameter :: dp = kind(1.d0) real(dp), dimension(:), allocatable ::& a,c,d,al,s,comp,po,& common/blk1/ pold,oxplus,oxmin,a9,& common/blk2/ qo,bo,x dimensioned matrices end module felles_matriser 3.11 Module nrtype Module nrtype integer, parameter :: dp = kind(1.d0) integer, parameter :: sp = kind(1.0) end module nrtype 3.12 Datafil 6,4,1,1,1,0 mx,stmax,isol,ipe,iskip,iwrite 100,.05,10,2000,.7889 kx,phi,dex,porig,borig 1.358,8.03d-06,.002,0.001,1 visorg,dbdp,delt1,eps,dez 10 dey -1,4*0,1 oil flow rates (mx values)
36 Resultatfil ***** one dimensional, one phase simulator ***** basic assumptions of this model include: - horizontal flow of a compressible fluid - pressure dependent volume factor - pressure independent viscosity - homogeneous rock properties, that is the same porosity and permeability in all blocks. - flowing fluid is undersaturated oil number of blocks in x-direction, mx... : 6 maximum number of time steps, stmax... : 4 solution method used, isol... : 1 ipe... : 1 iskip... : 1 write option, iwrite... : 0 horizontal permeability, kx, md... : porosity, phi, fraction... : delta length (x-dir), dex, ft... : original oil pressure, porig, psia... : original oil fvf, borig, std vol / res vol... : original oil viscosity, visorg, cp... : oil fvf pressure derivative, dbdp, std vol/res vol/psi... : time increment, delt1, days... : pressure tolerence, eps... : block width, dez, ft... : 1.0 block thickness, dey, ft... : 10.0 block no. : 1 oil rate, qo, stb/d block no. : 2 oil rate, qo, stb/d block no. : 3 oil rate, qo, stb/d block no. : 4 oil rate, qo, stb/d block no. : 5 oil rate, qo, stb/d block no. : 6 oil rate, qo, stb/d
37 35 block no. : 1 pressure point, x(i), ft 5.0 block no. : 2 pressure point, x(i), ft 15.0 block no. : 3 pressure point, x(i), ft 25.0 block no. : 4 pressure point, x(i), ft 35.0 block no. : 5 pressure point, x(i), ft 45.0 block no. : 6 pressure point, x(i), ft 55.0 ************************************************** block no. : 1 oil pressure, psia block no. : 2 oil pressure, psia block no. : 3 oil pressure, psia block no. : 4 oil pressure, psia block no. : 5 oil pressure, psia block no. : 6 oil pressure, psia steps= 1 time= D-04 np= D-04 delt= D-04 cum cycle= 2 ni= D-04 nt= D+01 qotot= D+01 cum oil error= D+00 npc= D-03 ************************************************** block no. : 1 oil pressure, psia block no. : 2 oil pressure, psia block no. : 3 oil pressure, psia block no. : 4 oil pressure, psia block no. : 5 oil pressure, psia block no. : 6 oil pressure, psia steps= 2 time= D-04 np= D-04 delt= D-04 cum cycle= 4 ni= D-04 nt= D+01 qotot= D+01 cum oil error= D-13 npc= D-02 ************************************************** block no. : 1 oil pressure, psia block no. : 2 oil pressure, psia block no. : 3 oil pressure, psia block no. : 4 oil pressure, psia block no. : 5 oil pressure, psia block no. : 6 oil pressure, psia steps= 3 time= D-03 np= D-03 delt= D-04 cum cycle= 6 ni= D-03 nt= D+01 qotot= D+01 cum oil error= D-13 npc= D-02 **************************************************
38 36 block no. : 1 oil pressure, psia block no. : 2 oil pressure, psia block no. : 3 oil pressure, psia block no. : 4 oil pressure, psia block no. : 5 oil pressure, psia block no. : 6 oil pressure, psia steps= 4 time= D-03 np= D-03 delt= D-04 cum cycle= 8 ni= D-03 nt= D+01 qotot= D+01 cum oil error= D-13 npc= D-02
8. En fase i to dimensjoner
8. En fase i to dimensjoner Utvid programmet til også å inkludere strøm i to dimensjoner for en fase i et horisontalt system. Bruk implisitt formulering Løs ligningssettet med LSOR eller eliminasjon og
σ cosθ φ (1) Forklar kort de størrelser som inngår, deres benevning i et konsistent sett av enheter og hva J-funksjonen brukes til.
AVDELING FOR TEKNISK - NATURVITENSKAPELIGE FAG EKSAMEN I: TE 195 Reservoarteknikk 1 VARIGHET: kl 09.00 14.00 TILLATTE HJELPEMIDLER: Kalkulator OPPGAVESETTET BESTÅR AV: 7 sider MERKNADER: Ingen DATO: 3.JUNI
Innføring i RESERVOARSIMULERING. Svein M. Skjæveland og Jann-Rune Ursin
Innføring i RESERVOARSIMULERING Svein M. Skjæveland og Jann-Rune Ursin Høgskolen i Stavanger august 1999 Innhold I Teoretisk grunnlag 1 1 Opplegg 2 1.1 Undervisningsopplegg... 2 1.2 Faglig omfang........
Innføring i RESERVOARSIMULERING
Innføring i RESERVOARSIMULERING Svein M. Skjæveland og Jann-Rune Ursin Høgskolen i Stavanger August 2000 Innhold I Teoretisk grunnlag 1 1 Opplegg 2 1.1 Undervisningsopplegg......................... 2 1.2
Strøm av olje og vann i berggrunnen matematisk model, simulering og visualisering
Strøm av olje og vann i berggrunnen matematisk model, simulering og visualisering Hans Fredrik Nordhaug Matematisk institutt Faglig-pedagogisk dag, 01.02.2000. Oversikt 1 Oversikt Introduksjon. Hva er
(a) Alternativt lineært eller radielt system, (b) Innlesing av nye data ved tid tqchg: qo(1), qo(mx), delmin, delmax, dtmult, dpmax, pconst, tqchg.
6. Radielt system Oppgaver 1. Programmet skal utvides til å inkludere (a) Alternativt lineært eller radielt system, (b) Innlesing av nye data ved tid tqchg: qo(1), qo(mx), delmin, delmax, dtmult, dpmax,
Oppgave 3. Skisse til løsning Eksamen i Reservoarteknikk 14. desember, a) Se forelesningene. b) Fra Darcys lov,
Skisse til løsning Eksamen i Reservoarteknikk 14 desember 2006 Oppgave 3 a) Se forelesningene b) Fra Darcys lov u = k dp µ dr Darcy-hastigheten u er uttrykt ved u r = q/a hvor tverrsnittsarealet A er gitt
Strøm av olje og vann i berggrunnen matematisk model, simulering og visualisering
Strøm av olje og vann i berggrunnen matematisk model, simulering og visualisering Hans Fredrik Nordhaug Matematisk institutt Faglig-pedagogisk dag, 01.02.2000. Oversikt 1 Oversikt Introduksjon. Hva er
To faser, olje og vann, i en dimensjon
To faser, olje og vann, i en dimensjon Utvid programmet til også å inkludere strøm av de to fasene olje og vann i en dimensjon for et horisontalt system Bruk kvasi-implisitt formulering med kordemetoden
Følgende kapillartrykksdata ble oppnådd ved å fortrenge vann med luft fra to vannmettede
ResTek1 Øving 5 Oppgave 1 Følgende kapillartrykksdata ble oppnådd ved å fortrenge vann med luft fra to vannmettede kjerneplugger: 1000 md prøve 200 md prøve P c psi S w P c psi S w 1.0 1.00 3.0 1.00 1.5
1 C z I G + + = + + 2) Multiplikasjon av et tall med en parentes foregår ved å multiplisere tallet med alle leddene i parentesen, slik at
Ekstranotat, 7 august 205 Enkel matematikk for økonomer Innhold Enkel matematikk for økonomer... Parenteser og brøker... Funksjoner...3 Tilvekstform (differensialregning)...4 Telleregelen...7 70-regelen...8
Notat: Analytisk løsning
Notat: Analytisk løsning I dette notatet er utledet en analytisk løsning på det problemet som simuleres i øving 1: Strøm av en svakt kompressibel fase (olje) gjennom et horisontalt, endimensjonalt, reservoar
Kanter, kanter, mange mangekanter
Kanter, kanter, mange mangekanter Nybegynner Processing PDF Introduksjon: Her skal vi se på litt mer avansert opptegning og bevegelse. Vi skal ta utgangspunkt i oppgaven om den sprettende ballen, men bytte
hvor s er målt langs strømningsretningen. Velges Darcy enheter så har en
Skisse til løsning Eksamen i Reservoarteknikk. september, 998 Oppgave a) v k dφ s µ ds ; () hvor s er målt langs strømningsretningen. Velges Darcy enheter så har en v s : volumhastighet, cm/s k : permeabilitet,
Enkel matematikk for økonomer 1. Innhold. Parenteser, brøk og potenser. Ekstranotat, februar 2015
Ekstranotat, februar 205 Enkel matematikk for økonomer Innhold Enkel matematikk for økonomer... Parenteser, brøk og potenser... Funksjoner...4 Tilvekstform (differensialregning)...5 Nyttige tilnærminger...8
TMA4100 Matematikk 1 Høst 2014
Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag TMA4 Matematikk Høst 4 Løsningsforslag Øving 5.7.4 Vi observerer at både y = cos πx 4 og y = x er like funksjoner. Det vil si
INF109 - Uke 1b 20.01.2016
INF109 - Uke 1b 20.01.2016 1 Variabler Et program er ikke til stor hjelp hvis det er statisk. Statisk betyr at programmet bare bearbeider faste data som er lagt inn i programkoden. For å gjøre programmer
ResTek1 Øving 12. Oppgave 1 Trykkfallstest. Oppgave 2 Trykkfallstest
ResTek1 Øving 12 Oppgave 1 Trykkfallstest Følgende formasjons- og produksjonsdata er gitt for denne trykkfallstesten, tabell 1, Trykkdata er gitt i tabell 2, Beregn permeabilitet og skinfaktor fra transient
ResTek1 Løsning Øving 12
ResTek1 Løsning Øving 12 Oppgave 1 Den totale kompressibiliteten c t er gitt ved, c t = c o S o + c w S w + c g S g + c f = 10.95 10 6 psi 1. Fra plottet ser vi at m = 8.1 psi/dekade. Dette gir k o = 162.6Q
MAT1030 Diskret matematikk
MAT1030 Diskret matematikk Plenumsregning 1: Kapittel 1 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 17. januar 2008 Velkommen til plenumsregning for MAT1030 Torsdager 10:15 12:00 Gjennomgang
ResTek1 Løsning Øving 11
ResTek Løsning Øving Oppgave a) La L bety lengde, M masse, T tid i et hvilket som helst konsistent sett av enheter. Da er [k] L 2, [µ] MLT, [p] (MLT 2 )L 2 MLT 2, [c] LT 2 M, og da blir t D p D» kt φµcr
TDT4102 Prosedyreog objektorientert programmering Vår 2016
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 4 Frist: 2016-02-12 Mål for denne øvingen:
Young-Laplace si likning
Young-Laplace si likning Dette er Appendiks A i hovedoppgaven til Leiv Magne Siqveland, Høgskolen i Stavanger, Sivilingeniørutdanningen, innlevert 8. juni 996. Krumme flater z Z (a,b) X Y y x Figur : Flate
INF 4130. 8. oktober 2009. Dagens tema: Uavgjørbarhet. Neste uke: NP-kompletthet
INF 4130 8. oktober 2009 Stein Krogdahl Dagens tema: Uavgjørbarhet Dette har blitt framstilt litt annerledes tidligere år Se Dinos forelesninger fra i fjor. I år: Vi tenker mer i programmer enn i Turing-maskiner
ResTek1 Løsning Øving 11
ResTek Løsning Øving Oppgave a) La L bety lengde, M masse, T tid i et hvilket som helst konsistent sett av enheter. Da er [k] =L 2, [µ] =M/LT, [p] =(ML/T 2 )/L 2 = M/LT 2, [c] =LT 2 /M, og da blir [ ]
Utførelse av programmer, metoder og synlighet av variabler i JSP
Utførelse av programmer, metoder og synlighet av variabler i JSP Av Alf Inge Wang 1. Utførelse av programmer Et dataprogram består oftest av en rekke programlinjer som gir instruksjoner til datamaskinen
Figur 1: Skisse av den ene armen til en sentrifuge; kjerne i beholder. dp = ρω 2 Z 2 1. rdr; = 1 2 ρω2 (r 2 2 r2 1):
Skisse til løsning Eksamen i Reservoarteknikk 3. september, 999 Oppgave Figur : Skisse av den ene armen til en sentrifuge; kjerne i beholder. a Akselerasjonen er ω r. Kraftbidraget df fra masse dm i volumelement
a) Anta først at drivmekanismen er oppløst gassdriv, uten gasskappe, og estimer oljevolum opprinnelig tilstede i reservoaret.
ResTek1 Øving 9 Oppgave 1 Følgende data er hentet fra et oljereservoar: p N p R p B o R s B g psia 10 6 stb scf/stb rb/stb scf/stb rb/scf 3330 - - 1.2511 510 0.00087 3150 1.024 1050 1.2353 477 0.00092
Algoritmer - definisjon
Algoritmeanalyse Algoritmer - definisjon En algoritme er en beskrivelse av hvordan man løser et veldefinert problem med en presist formulert sekvens av et endelig antall enkle, utvetydige og tidsbegrensede
Emne: BIP 140, Reservoarteknikk Dato: 4. Desember 2010.
1 Fakultet for teknisk naturvitenskapelige fag Emne: BIP 140, Reservoarteknikk Dato: 4. Desember 2010. Tid: 09.00-13.00 Tillatte hjelpemidler: Enkel kalkulator Oppgavesettet består av: 8 sider inkludert
Eksamensoppgavehefte 2. MAT1012 Matematikk 2: Mer lineær algebra
Eksamensoppgavehefte 2 MAT1012 Matematikk 2: Mer lineær algebra Matematisk institutt, UiO, våren 2010 I dette heftet er det samlet et utvalg av tidligere eksamensoppgaver innenfor temaet Lineær algebra
13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER
.9.22 LITT OM OPPLEGGET INF EKSTRATILBUD Stoff fra uke - 2. September 22 Siri Moe Jensen Målgruppe: De som mangler forståelse for konseptene gjennomgått så langt. Trening får du ved å jobbe med oppgaver,
HØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Eksamensdato: 15.des 2011 Studiepoeng: 6 Varighet: 4 timer. Start kl 09:00 og skal leveres inn senest kl 13:00 Emnekode: Emnenavn:
while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke
[Kurssidene] [ ABI - fagsider bibin ] Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Michael Preminger
Differansemetoder for to-punkts randverdiproblemer. Innledning. Anne Kværnø
Differansemetoder for to-punkts randverdiproblemer. Anne Kværnø Innledning Tidligere i kurset har dere diskutert parabolske, elliptiske og hyperbolske differensialligninger, og hvordan disse kan løses
Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59
Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Formål Formålet med denne oppgaven er å gi trening i hele pensum og i å lage et større program. Løsningen du lager skal være
Løse reelle problemer
Løse reelle problemer Litt mer om løkker, metoder med returverdier og innlesing fra fil INF1000, uke4 Geir Kjetil Sandve Repetisjon fra forrige uke: while Syntaks: while (condition) do1; do2;... Eksempel:
Differensiallikninger definisjoner, eksempler og litt om løsning
Differensiallikninger definisjoner, eksempler og litt om løsning MAT-INF1100 Differensiallikninger i MAT-INF1100 Definsjon, litt om generelle egenskaper Noen få anvendte eksempler Teknikker for løsning
Lær å bruke Microsoft Mathematics, Matematikk-tillegget i Word og WordMat. Av Sigbjørn Hals
Lær å bruke Microsoft Mathematics, Matematikk-tillegget i Word og WordMat Av Sigbjørn Hals 1 Innhold Hva er matematikktillegget for Word?... 2 Nedlasting og installasjon av matematikktillegget for Word...
TDT4102 Prosedyre og Objektorientert programmering Vår 2014
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 1 Frist: DD.MM.YYYY Mål for denne øvinga:
Frankering og computer-nettverk
318 Frankering og computer-nettverk Øystein J. Rødseth Universitetet i Bergen Beskrivelse av oppgaven. I denne oppgaven vil du bruke kombinatorikk, tallteori og muligens også litt analyse. Oppgaven er
Lineær Algebra og Vektorrom. Eivind Eriksen. Høgskolen i Oslo, Avdeling for Ingeniørutdanning
Lineær Algebra og Vektorrom Eivind Eriksen Høgskolen i Oslo, Avdeling for Ingeniørutdanning c Eivind Eriksen 2005. Innhold Kapittel 1. Lineære likningssystemer 1 1.1. Lineære likningssystemer i to variable
Løsningsforslag Prøveeksamen i MAT-INF 1100, Høsten 2003
Løsningsforslag Prøveeksamen i MAT-INF 1100, Høsten 003 Denne prøveeksamenen har samme format som den virkelige eksamenen, og inneholder oppgaver av samme type og vanskelighetsgrad. Første del av eksamen
Numerisk løsning av PDL
Numerisk løsning av PDL Arne Morten Kvarving Department of Mathematical Sciences Norwegian University of Science and Technology 6. November 2007 Problem og framgangsmåte Fram til nå har vi sett på ordinære
Simulerings-eksperiment - Fysikk/Matematikk
Simulerings-eksperiment - Fysikk/Matematikk Tidligere dette semesteret er det gjennomført et såkalt Tracker-eksperiment i fysikk ved UiA. Her sammenlignes data fra et kast-eksperiment med data fra en tilhørende
, tilsvarende terskeltrykket p d
HØGSKOLEN I STAVANGER AVDELING FOR TEKNISK - NATURVITENSKAPELIGE FAG DATO: 3. SEPTEMBER 1999 EKSAMEN I: TE 195 Reservoarteknikk 1 VARIGHET: kl 09.00 14.00 TILLATTE HJELPEMIDLER: Kalkulator OPPGAVESETTET
ResTek1 Løsning Øving 12
ResTek1 Løsning Øving 12 Oppgave 1 Den totale kompressibiliteten er gitt ved, Fra plottet ser vi at. Dette gir Skinfaktoren er gitt ved Fra grafen i figur 1 ser en at. Dette gir en skadet brønn. Det kan
Faktor - En eksamensavis utgitt av Pareto
Faktor - En eksamensavis utgitt av Pareto SØK 2001 Offentlig økonomi og økonomisk politikk Eksamensbesvarelse Vår 2004 Dette dokumentet er en eksamensbesvarelse, og kan inneholde feil og mangler. Det er
Logistisk regresjon 2
Logistisk regresjon 2 SPSS Utskrift: Trivariat regresjon a KJONN UTDAAR Constant Variables in the Equation B S.E. Wald df Sig. Exp(B) -,536,3 84,56,000,25,84,08 09,956,000,202 -,469,083 35,7,000,230 a.
TDT4102 Prosedyre og Objektorientert programmering Vår 2015
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Øving 1 LF LØSNINGSFORSLAG Mål for denne øvinga:
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i MAT-INF 1100 Modellering og beregninger. Eksamensdag: Mandag 5. desember 2011. Tid for eksamen: 9:00 13:00. Oppgavesettet er på
Forelesning 1. Algoritmer, pseudokoder og kontrollstrukturer. Dag Normann - 14. januar 2008. Vi som skal undervise. Hva er diskret matematikk?
Forelesning 1 Algoritmer, pseudokoder og kontrollstrukturer Dag Normann - 14. januar 2008 Vi som skal undervise Dag Normann Roger Antonsen Christian Schaal Robin Bjørnetun Jacobsen http://www.uio.no/studier/emner/matnat/math/mat1030/v08/
Diverse eksamensgaver
Diverse eksamensgaver Noen har fått den idé å lage et språk hvor klasser kan ha noe tilsvarende byvalue-result -parametere. Klasser har ingen konstruktører, og by-value-result parametere spesifiseres som
MAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Forelesning 4: Logikk Dag Normann Matematisk Institutt, Universitetet i Oslo 27. januar 2010 (Sist oppdatert: 2010-01-27 12:47) Kapittel 4: Logikk (fortsettelse) MAT1030 Diskret
Algoritmeanalyse. (og litt om datastrukturer)
Algoritmeanalyse (og litt om datastrukturer) Datastrukturer definisjon En datastruktur er den måten en samling data er organisert på. Datastrukturen kan være ordnet (sortert på en eller annen måte) eller
UNIVERSITETET I OSLO ØKONOMISK INSTITUTT
UNIVERSITETET I OSLO ØKONOMISK INSTITUTT Eksamen i: ECON30/40 Matematikk : Matematisk analyse og lineær algebra Exam: ECON30/40 Mathematics : Calculus and Linear Algebra Eksamensdag: Tirsdag 0. desember
TMA4122/TMA4130 Matematikk 4M/4N Høsten 2010
Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag TMA4122/TMA410 Matematikk 4M/4N Høsten 2010 1 Oppgave: Løs følgende ligningssystemer ved hjelp av Gauss-eliminasjon med delvis
Øvingsforelesning i Python (TDT4110)
Øvingsforelesning i Python (TDT4110) Tema: Øving 1, PyCharm, Print, Input, (funksjoner og globale variabler) Gå til https://www.jetbrains.com/pycharm/ og sett PyCharm på nedlasting NÅ Kristoffer Hagen
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i MAT-INF 00 Modellering og beregninger. Eksamensdag: Torsdag 6. desember 202. Tid for eksamen: 9:00 3:00. Oppgavesettet er på 8
3.A IKKE-STASJONARITET
Norwegian Business School 3.A IKKE-STASJONARITET BST 1612 ANVENDT MAKROØKONOMI MODUL 5 Foreleser: Drago Bergholt E-post: [email protected] 11. november 2011 OVERSIKT - Ikke-stasjonære tidsserier - Trendstasjonaritet
Plenumsregning 1. MAT1030 Diskret Matematikk. Repetisjon: Algoritmer og pseudokode. Velkommen til plenumsregning for MAT1030
MAT1030 Diskret Matematikk Plenumsregning 1: Kapittel 1 Mathias Barra Matematisk institutt, Universitetet i Oslo Plenumsregning 1 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) MAT1030 Diskret Matematikk
...(1) R 1. og R 2. står for og forklar hvorfor kapillartrykket vanligvis er en funksjon av metningen.
AVDELING FOR TEKNISK - NATURVITENSKAPELIGE FAG EKSAMEN I: TE 195 Reservoarteknikk 1 VARIGHET: kl 09.00 14.00 TILLATTE HJELPEMIDLER: Kalkulator OPPGAVESETTET BESTÅR AV: 7 sider MERKNADER: Ingen DATO: 27.MAI
MAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Plenumsregning 1: Kapittel 1 Mathias Barra Matematisk institutt, Universitetet i Oslo 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) Plenumsregning 1 MAT1030 Diskret Matematikk
Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.2
Delkapittel 9.2 Rød-svarte og 2-3-4 trær Side 1 av 16 Algoritmer og datastrukturer Kapittel 9 - Delkapittel 9.2 9.2 Rød-svarte og 2-3-4 trær 9.2.1 B-tre av orden 4 eller 2-3-4 tre Et rød-svart tre og et
Hva er en algoritme? Har allerede sett på mange algoritmer til nå i IT1101. Forholdet mellom en algoritme og et program. Algoritme program prosess
IT1101 Informatikk basisfag, dobbeltime 2/10 Hva er en algoritme? Fremgangsmåte for noe Hittil: Datarepresentasjon Datamanipulasjon Datamaskinarkutektur hvordan maskinen jobber Operativsystem Program som
MAT-INF 1100: Obligatorisk oppgave 1
13. september, 2018 MAT-INF 1100: Obligatorisk oppgave 1 Innleveringsfrist: 27/9-2018, kl. 14:30 i Devilry Obligatoriske oppgaver («obliger») er en sentral del av MAT-INF1100 og er utmerket trening i å
<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.
Hver gang funksjonen printhallo kalles utføres instruksjonene spesifisert i den. [Kurssidene] [ ABI - fagsider bibin ] Webprogrammering høsten 2015 //funksjonskall printhallo(); //enda en gang printhallo();
Plenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode
Plenumsregning 1 Kapittel 1 Roger Antonsen - 17. januar 2008 Velkommen til plenumsregning for MAT1030 Torsdager 10:15 12:00 Gjennomgang av ukeoppgaver Gjennomgang av eksempler fra boka Litt repetisjon
MAT1030 Plenumsregning 1
MAT1030 Plenumsregning 1 Kapittel 1 Mathias Barra - 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) Plenumsregning 1 Velkommen til plenumsregning for MAT1030 Fredager 12:15 14:00 Vi vil gjennomgå utvalgte
Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm
Mer om easyio Mer om forgreninger Løkker 7. september 2004 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo Java 4 1 Tre måter å lese fra terminal Først:
Hjemmeeksamen 2 i INF3110/4110
Hjemmeeksamen 2 i INF3110/4110 Innleveringsfrist: onsdag 19. november kl. 1400 Innlevering Besvarelsen av oppgave 2,3,4 og 5 skal leveres skriftlig på papir i IFI-ekspedisjonen. Merk denne med navn, kurskode,
Dagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn?
Dagens tema: 12 gode råd for en kompilatorskriver Hva skal gjøres med navn? Sjekking av navn Hvordan sjekke navn? Testutskrifter 12 gode råd En kompilator må også sjekke riktig navnebruk: Det må ikke forekomme
NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR ELEKTRONIKK OG TELEKOMMUNIKASJON
Side 1 av 7 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR ELEKTRONIKK OG TELEKOMMUNIKASJON Faglig kontakt under eksamen: Navn: Helge E. Engan Tlf.: 94420 EKSAMEN I EMNE TFE4130 BØLGEFORPLANTNING
LØSNINGSFORSLAG SIF5015 DISKRET MATEMATIKK Onsdag 18. desember 2002
Norges teknisk naturvitenskapelige universitet Institutt for matematiske fag Side av 7 LØSNINGSFORSLAG SIF55 DISKRET MATEMATIKK Onsdag 8. desember 22 Oppgave a) Vi vil ha 77x (mod 3), så vi trenger en
Generell informasjon om faget er tilgjengelig fra It s learning. 1 En kort oppsummering Adaptiv filtrering 2. 3 Prediksjon 4
Stavanger, 13. august 2013 Det teknisknaturvitenskapelige fakultet ELE500 Signalbehandling, 2013. Generell informasjon om faget er tilgjengelig fra It s learning. Innhold 1 En kort oppsummering. 1 2 Adaptiv
EKSAMEN I SIF4048 KJEMISK FYSIKK OG KVANTEMEKANIKK Lørdag 2. august 2003 kl. 09.00-15.00
Side 1 av 5 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET Institutt for fysikk Faglig kontakt under eksamen: Margareth Nupen, tel. 73 55 96 42 Ingjald Øverbø, tel. 73 59 18 67 EKSAMEN I SIF4048 KJEMISK
VELKOMMEN TIL MAT-INF1100(L) Knut Mørken [email protected] Rom 1033, Niels Henrik Abels hus
VELKOMMEN TIL MAT-INF1100(L) Knut Mørken [email protected] Rom 1033, Niels Henrik Abels hus Forelesere Knut Mørken og Martin Reimers, Matematisk institutt, 10. etg i Niels Henrik Abels hus Arbeider med
Likninger - en introduksjon på 8. trinn Hva er en likning og hva betyr å løse den?
side 1 Detaljert eksempel om Likninger - en introduksjon på 8. trinn Hva er en likning og hva betyr å løse den? Dette er et forslag til undervisningsopplegg der utgangspunktet er sentrale problemstillinger
MAT-INF 1100: Obligatorisk oppgave 1
22. september, 2016 MAT-INF 1100: Obligatorisk oppgave 1 Innleveringsfrist: 6/10-2016, kl. 14:30 i Devilry Obligatoriske oppgaver («obliger») er en sentral del av MAT-INF1100 og er utmerket trening i å
ST0202 Statistikk for samfunnsvitere Kapittel 6: Normalfordelingen
ST0202 Statistikk for samfunnsvitere Kapittel 6: Normalfordelingen Bo Lindqvist Institutt for matematiske fag 2 Kap. 6: Normalfordelingen Normalfordelingen regnes som den viktigste statistiske fordelingen!
Dagens tema: Sjekking
Dagens tema Dagens tema: Sjekking Navnebinding (obligatorisk oppgave 3) Biblioteket Logging Riktig bruk av navn (frivillig) Typesjekking (frivillig) Hele prosjektet Strukturen til kompilatoren vår f.pas
Shellscripting I. Innhold
Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Shellscripting I Tor Halsan 19.08.2010 Lærestoffet er utviklet for faget LN199D Scripting av Servere Resymé: Leksjonen er første innføring
Øgrim Bakken Pettersen Skrindo Thorstensen Thorstensen. Digitalt verktøy for Sigma 1P TI-84
Øgrim Bakken Pettersen Skrindo Thorstensen Thorstensen Digitalt verktøy for TI-84 Innhold 1 Innstillinger 4 2 Regning 5 2.1 Regnerekkefølge................................ 5 2.2 Kvadratrot....................................
MAT 100a - LAB 3. Vi skal først illustrerere hvordan Newtons metode kan brukes til å approksimere n-te roten av et positivt tall.
MAT 100a - LAB 3 I denne øvelsen skal vi bruke Maple til å illustrere noen anvendelser av derivasjon, først og fremst Newtons metode til å løse likninger og lokalisering av min. og max. punkter. Vi skal
Numerisk løsning av differensiallikninger Eulers metode,eulers m
Numerisk løsning av differensiallikninger Eulers metode, Eulers midtpunktmetode, Runge Kuttas metode, Taylorrekkeutvikling* og Likninger av andre orden MAT-INF1100 Diskretsering Utgangspunkt: differensiallikning
Litt enkel matematikk for SOS3003
Litt enkel matematikk for SOS3003 Erling Berge 24 Aug 2004 Erling Berge 1 Om matematikk Matematikk er ikkje vanskeleg Det er eit språk for logikken. Det er lett å lære å lese Litt vanskelegare å forstå
Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) IN 211 Programmeringsspråk
Plan: Parameter-overføring Alias Typer (Ghezzi&Jazayeri kap.3 frem til 3.3.1) Funksjonelle språk (Ghezzi&Jazayeri kap.7 frem til 7.4) Neste uke: ML Ark 1 av 16 Forelesning 16.10.2000 Parameteroverføring
12 Vekst. Areal under grafer
MATEMATIKK: 2 Vekst. Areal under grafer 2 Vekst. Areal under grafer 2. Stigningstall og gjennomsnittlig vekst I kapitlene 8 og 0 viste vi hvordan vi kunne regne ut stigningen til en rett linje eller lineær
Programmeringsspråk for nybegynnere. Krav til språket. Krav til språket. Krav til språket
Programmeringsspråk for nybegynnere Krav til språket Hva om vi laget vårt eget språk til INF1000? Programmeringsspråket må være så enkelt som mulig. (Programmering er vanskelig nok som det er.) Hvilke
TDT4102 Prosedyre og Objektorientert programmering Vår 2015
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Øving 3 Frist: 2014-02-07 Mål for denne øvinga:
