eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPocedura całkowaniaRe: Pocedura całkowania
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!new
    sfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
    From: "slawek" <s...@h...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: Pocedura całkowania
    Date: Mon, 6 Jul 2009 22:45:32 +0200
    Organization: TP - http://www.tp.pl/
    Lines: 64
    Message-ID: <h2tobm$as9$1@nemesis.news.neostrada.pl>
    References: <h2t00t$4h$1@atlantis.news.neostrada.pl> <h2tcvs$kbn$1@news.onet.pl>
    NNTP-Posting-Host: 62.69.219.25
    Mime-Version: 1.0
    Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=response
    Content-Transfer-Encoding: 8bit
    X-Trace: nemesis.news.neostrada.pl 1246913718 11145 62.69.219.25 (6 Jul 2009 20:55:18
    GMT)
    X-Complaints-To: u...@n...neostrada.pl
    NNTP-Posting-Date: Mon, 6 Jul 2009 20:55:18 +0000 (UTC)
    In-Reply-To: <h2tcvs$kbn$1@news.onet.pl>
    X-Priority: 3
    X-MSMail-Priority: Normal
    Importance: Normal
    X-Newsreader: Microsoft Windows Live Mail 14.0.8064.206
    X-MimeOLE: Produced By Microsoft MimeOLE V14.0.8064.206
    Xref: news-archive.icm.edu.pl pl.comp.programming:182591
    [ ukryj nagłówki ]



    Użytkownik "Michoo" <m...@v...pl> napisał w wiadomości grup
    dyskusyjnych:h2tcvs$kbn$...@n...onet.pl...
    > mieć też równe pochodne do n-1 rzędu - jeżeli masz tylko tablicę z
    > wartościami funkcji bazowej to jak zrobiłeś splajny stopnia większego niż
    > 1(gdzie wychodzi łamana - jak we wzorze trapezów)?

    Interpolacja spline'em. Ma się zgadzać wartość i m-1 pochodnych, ma być
    wielomian stopnia m-tego pomiędzy węzłami. Z tego wychodzi jaki to spline.
    Ze spline nietrudno policzyć całkę - skoro to wielomian, to całka jest
    wielomianem, potem tylko granice całkowania - sumowanie po wszystkich
    kawałkach. Patrz Forman S. Acton, Numerical Methods that Work, Princeton
    University, (ISBN-13: 9780883854501 | ISBN-10: 0883854503) - niezła książka
    na swój sposób. Nota bene, odjazd to jest jak to się robi na zespolonych
    (zmiana deklaracji) - też działa, bo czemu miałoby nie działać?! :)

    slawek


    !***************************************************
    ****************************************************
    ****************************
    !
    ! Spline integration
    !
    !***************************************************
    ****************************************************
    ****************************

    double precision function intspl(y,n,h)

    integer, parameter :: nmax = 16384

    double precision h
    double precision :: y(1)
    double precision :: sa,sb,sc,sd,un
    double precision, dimension(nmax) :: s,u

    s(1) = 0.
    s(n) = 0.
    u(1) = 0.
    sa = 0.
    sb = 0.
    sc = 0.
    sd = 0.

    if(n .gt. 1) then
    do i=2,n-1
    s(i)= -1.0 / (s(i-1) + 4.0)
    u(i)=(y(i+1)-2*y(i)+y(i-1)) / h
    u(i)=(12.0*u(i)/h - u(i-1))/(s(i-1)+4.0)
    end do
    do i=n-1,1,-1
    s(i)=s(i)*s(i+1)+u(i)
    end do
    do i=1,n
    sa = sa + (s(i+1)-s(i))
    sb = sb + (s(i)/2.)
    sc = sc + ((y(i+1)-y(i))/h - (2.*h*s(i)+h*s(i+1))/6.)
    sd = sd + y(i)
    end do
    end if

    intspl = h**4/4.*sa + h**3/3.*sb + h**2/2.*sc + h*sd

    end function intspl

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: