Documente online.
Username / Parola inexistente
  Zona de administrare documente. Fisierele tale  
Am uitat parola x Creaza cont nou
  Home Exploreaza
Upload


loading...

















































METODE DE INTEGRARE A ECUATIILOR DIFERENTIALE DE ORDINUL INTAI

Matematica












ALTE DOCUMENTE

PLANIFICARE SEMESTRIALĂ algebra
BLAISE PASCAL
NOŢIUNI DE BAZĂ - Algebra
Ridicare la putere
Blaise Pascal
FUNCŢIA DE GRADUL II
Calculul ecuatiilor matriciale
Cilindrul
Ecuatii de gradul al II-lea. Relatiile lui Viete.
Elemente de trigonometrie

Universitatea Tehnica Cluj-Napoca

Facultatea de Automatizari si Calculatoare

Sectia Automatica



An 1, Grupa 3111

METODE DE INTEGRARE A ECUAŢIILOR DIFERENŢ 414e49e ;IALE DE ORDINUL ÎNTÂI

Prof. Pop Kun Dorel Student: Imre Attila

Introducere

Se stie ca multe probleme din domeniul fizicii teoretice si al ingineriei se reduc la rezolvarea unor ecuatii sau sisteme de ecuatii diferentiale. Pe când rezolvarea lor analitica se face pe un model idealizat teoretic, transpunerea lor pe calculator presupune efectuarea unui compromis între precizia cu care se calculeaza rezultatul si timpul de rulare al algoritmului.

Integrarea numerica a ecuatiilor diferentiale

Având date:

si

se poate afla solutia y la valori discrete ale lui t.

Metoda lui Euler

Luam dezvoltarea în serie Taylor in vecinatatea lui t0:

Retinem numai primul termen derivat si definim:

pentru a obtine:




Metoda înjumatatirii (de medie)

Se bazeaza pe metoda lui Euler. Aproximarea creste în precizie evaluând panta de doua ori pe fiecare interval de latime h.

Calculam o tentativa a lui y la mijloc:

Re-evaluam panta:

Valoarea finala a lui y la capatul intervalului va fi:

Programul

Programul implementeaza cele doua metode de mai sus si traseaza graficele solutiilor gasite. Se va putea urmari diferenta dintre convergenta solutiilor suprapunând graficele si rulând algoritmii cu un numar variabil de iteratii.

Codul sursa

#include <stdio.h>

#include <stdlib.h>

#include <graphics.h>

#include <math.h>

#include <conio.h>

#include <dos.h>

int SW, SH; // dimensiunile ecranului

double zx, zy, gw, gh; // parametri de afisare

double l_lim, r_lim, u_lim, d_lim, h; // intervalul functiei

// functia

double func_init=0;

double func(double t, double y)

// metoda lui Euler

// rezultatul sub forma de vector valori double

// trabuie specificat numarul de iteratii

void euler(double *ret, int n)

// metoda lui medianei

// rezultatul sub forma de vector valori double

// trabuie specificat numarul de iteratii

void midpoint(double *ret, int n)

// initializare parametri functie:

- alocare memorie

- calculare pas h

double *init_func(int n, double a, double b, double c, double d)

// translatare coord. x in coordonate ecran

int fx(double x)

// translatare coord. y in coordonate ecran

int fy(double y)

// setare dimensiuni ecran

// necesare pentru afisare

void set_viewport(int a, int b, int c, int d)

// trasam graficul

void plot(double *data, int n, int col)

// initializare ecran video

void init_graphics()

int main()

closegraph();

return 0;



loading...











Document Info


Accesari: 2454
Apreciat:

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site

Copiaza codul
in pagina web a site-ului tau.




Coduri - Postale, caen, cor

Politica de confidentialitate

Copyright © Contact (SCRIGROUP Int. 2019 )