witam. mam taki problem. po przeprowadzeniu badań otrzymałem szereg wyników dla poszczegolnych czasów, na tej podstawie moge wykreslić przebieg ale potrzebuje znależc całke opisujacej go funkcji i nie wiem jak to zrobi. moze ktos sie juz zetkną z tym problemem? prosze o pomoc i z góry dziekuje. Michał
jak znale?? ca?ke funkcji podana w postaci tablicy wyników y=f(t) w matlabie lub maple?
Oct 25, 2006
Last reply: 19 years ago
7 Replies
Użytkownik "mizar3" snipped-for-privacy@op.pl napisał w wiadomości news: snipped-for-privacy@i42g2000cwa.googlegroups.com...
Z grubsza rzecz biorąc są dwie możliwości:
1) Znajdujesz funkcję opisującą z jakimś tam sensownym przybliżeniem Twoje wynika, a następnie w sposób analityczny znajdujesz całkę.2) Liczysz całkę jako pole pod wykresem.
Pierwszy sposób jest na pewno lepszy, o ile potrafisz mniej więcej przewidzieć charakter zależności funkcji.
Dnia 25-10-2006 o 20:49:35 mizar3 snipped-for-privacy@op.pl napisał(a):
Jeśli dobrze zrozumiałem, to masz już funkcję opisującą przebieg daną wzorem, teraz potrzebujesz całkę tej funkcji.
Na przykładzie (MATLAB):
syms t,x; % x - wartość symboliczna int(sin(x)); % całka nieoznaczona int(sin(t*x),t); % całkowanie po dt int(sin(x),0,1); % całka oznaczona w granicach od 0 do 1
nie mam taj funkcji danej wzorem a mam jedynie jej wykres, tzn jedną tabelke z x a drugą z y i problem polega na znalezieniu x i y dla całki z tej funkcji. juz sie dowiedziałem że można to zrobic korzystająć z wzoru riemmana ale nie wiem jak napisac taki programik sumujący
pozdrawiam Michał
Dnia 28-10-2006 o 14:33:57 mizar3 snipped-for-privacy@op.pl napisał(a):
W takim razie nic prostszego :)
MATLAB - przykład (całkowanie numeryczne metodą trapezów):
% POCZTEK KODU
x=[0 1 2 3 4 5]; % przykładowy wektor argumentów y=[0.1 0.2 0.1 0.7 0.8 0.2]; % przykładowy wektor wartości
calka_y_dx(i)=0;
for i=1:(size(x,2)-1),
if i==1 calka_y_dx(i+1)=0.5*h*(y(i)+y(i+1)); % ze wzoru na pole powierzchni trapezu else h=x(i+1)-x(i); % wysokość trapezu calka_y_dx(i+1)=calka_y_dx(i)+0.5*h*(y(i)+y(i+1)); % ze wzoru na pole powierzchni trapezu end
end
figure; plot(x,y,'r:+',x,calka_y_dx,'b:*'); % wykres legend('y','calka z y po dx'); % legenda wykresu
% KONIEC KODU
Myślę, że teraz powinieneś sobie z tym poradzić bez problemu.
Daniel Gonet napisał(a):
Dzieki bardzo za pomoc. Pozostał mi jeszcze jedynie problem jak przenieść dane z excela aby z nich stworzyc wektory danych w matlabie. pozdr Michał
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required