Fizyka połączonych punktów...

0

Graliście może kiedyś w grę Bridge (2D), która polegała na tym by zbudować most, tak by się nie zawalił gdy pociąg będzie po nim przejeżdżał? Były różne materiały budowlane, miały różną wagę, wytrzymałość na rozciąganie itd.

Chciałbym zrobić coś podobnego, ale być może do innych zastosowań - np. symulację wybuchu bomby w budynku, destrukcji różnych przedmiotów itd.

Wiecie może gdzie mogę znaleźć "teorię" do takich obliczeń? W jaki sposób można to policzyć? Sytuacja komplikuje się gdyż większość "punktów" jest połączona ze sobą i w dodatku mogą się rozciągać (lub ewentualnie pęknąć). Dziękuję za pomoc.

0

Wydaje mi się, że najszybciej znajdziesz takie rzeczy po prostu ucząc się fizyki. Tak na prawdę to pewnie nie analizuje się od tak sobie wszystkich punktów, tylko punkty w kontekście materiału. Materiały mają wiele cech, kruchość, rozciągliwość itd itd. To po prostu trzeba szukać i najlepiej pytać dobrych ludzi zajmujących się np. archtekturą. Oni powinni mieć wiedzę gdzie takie informacje znaleźć i jak je wykorzystać (mam nadzieję, że mają, bo nie chciałbym w przyszłości mieszkać w domu, który runie, bo ktoś źle policzył nacisk).

Ogólnie temat jest bardzo ale to bardzo skomplikowany.

0

Jesli to wchodzi w gre to polecam PhysX, ODE badz innego liba (te dwa akurat znam i polecam /zwlaszcza PhysX - z tym, ze jest zamkniety [ale darmowy], ODE to OpenSource ale imo gorzej napisany - tj kod i sdk paskudne/).

0

to moze pomoc, jezeli angielskiego sie nie boisz :P http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=40
pewnie polskie tlumaczenie tez gdzies znajdziesz.

0

Jesli chodzi o kwestie budowlane na przyklad to spytaj studentow takiego kierunku. Czesto podawane sa po prostu wzory na konkretne wartosci ciagliwosci/wytrzymalosci/zmian temperatury itp. Na pewno takie wzory znajdziesz w normach budowlanych, ale nie wiem czy sa powszechnie dostepne (elektryczne na przyklad nie sa).

0

Kiedyś bawiłem się taką fizyką i coś tam działającego udało mi się napisać. Korzystałem tylko z książki do fizyki do liceum (chyba 3 klasa). Właściwie to jest dość proste. Takie połączenia z różnych materiałów działaja bardzo podobnie do sprężyn, tylko ich elastyczność jest duzo mniejsza. Może w skrócie: Jest zbiór punktów i są one połączone prętami z różnych materiałów. Do każdego z tych punktów przypisywałem jakąś masę (obliczana na podstawie wagi prętów, z którymi punkt jest połączony). Potem do każdego punktu dodawałem prędkość zgodnie z przyspieszeniem grawitacyjnym. Następnie dla każdego połączenia patrzyłem jak zmieniły sie odległości między dwoma połączonymi punktami i proporcjonalnie do wzglęnej zmiany odległości i rozciągliwości materiału na punkty działała siła. Potem dla każdego punktu w zależności od siły zmieniała się jego prędkość i pozycja. I tak dalej. To taki bardzo ogólny opis. Żebyjakoś to działało potrzebne sa dokładne wzory, które mozna znaleźć w książkach i w Internecie. I najlepiej miec jakieś pojęcie o podstawach fizyki, bo inaczej może być ciężko.

0

Moja dobra rada symulacje wybuchu bomby w budynku możesz sobie od razu darować, co do obciążeń budowlanych możesz spróbować choć to też nie będzie hop siup :-) Oczywiście wszystko zależy od założeń: kształt budynków, co to u ciebie będzie wybuch( bo może to być stała fala rozchodząca sie z punktu) itp, itd. Najpierw proponuje nauczyć się: rachunku macierzowego, tensorowego, całkowego oraz równań różniczkowych. A potem możesz spróbować to zacząć projektować :d

0

A, i jak będziesz już znał metody analityczne stosowane w rachunku różniczkowo-całkowym, to później jest drugie tyle do nauki metod numerycznych.

0

To ja dodam swoje 3 grosze.
Generalnie siły działające na materiał powodują powstanie w nim naprężeń. Każdy materiał ma granice sprężystości - czyli maksymalne naprężenie, które nie spowoduje odkształcenia, a jak zdejmiemy przyłożoną siłę materiał wróci do pierwotnych rozmiarów. I w tej granicy będzie można coś programować. Do rozwiązania będzie równanie różniczkowe 1 stopnia. Możesz zastosować np. metodę runge-kutty. Ale po przekroczeniu granicy sprężystości zaczynają się jaja, tzn materiał odkształca się trwale. Podczas tych odkształceń zachodzą różne zjawiska. Ale tylko do pewnego momentu, po przekroczeniu granicy plastyczności nagle pęka. Właściwie jeśli będziesz używał jedynie materiałów kruchych (cegła, beton itp.) możesz pominąć odkształcenia trwałe (plastyczne). Granica plastyczności w takich materiałach leży bardzo blisko granicy sprężystości. Strasznie ciężko byłoby zaprogramować odkształcenia trwałe, a pękanie to już w ogóle kosmos.

Podsumowując - szanse coś zaprogramować masz jedynie w granicy sprężystości, czyli do momentu, kiedy siła jest na tyle mała, że po jej zdjęciu materiał wraca do pierwotnego kształtu. Po przekroczeniu granicy sprężystości materiał zaczyna odkształcać trwale lub od razu pęka jeśli przyjmiemy, że jest on super kruchy. Możesz jedynie wiedzieć w którym miejscu nastąpiło przekroczenie granicy sprężystości i jakoś to pokazać w programie. Ale co się później dzieje z materiałem nie dasz radę przewidzieć.

Ostatnio Polacy napisali jakiś program do symulowania crash-testów autobusów, ponoć całkiem niezła robota. I tam zrobiono takie rzeczy jak pękanie i odkształcenia trwałe. Jednak dla takiego szarego programisty-hobbysty jak ty czy ja jest to niemożliwe do wykonania.

A tu masz dział wikipedii traktujący o tych rzeczach:
http://pl.wikipedia.org/wiki/Kategoria:Wytrzyma%C5%82o%C5%9B%C4%87_materia%C5%82%C3%B3w

0

Fizyka i komputery... Jeżeli zaczniesz bawić się w programowanie fizyki to musisz po pierwsze doskonale poznać model fizyczny zjawiska. Wiele problemów można rozwiązać jeżeli tylko wiesz jak zabrać sie do tego bez komputera. Około 90% problemów z którymi zetknąłem się na studiach, a co by nie było ukończyłem Wydział Fizyki UW - Metody Komputerowe Fizyki, stawało się trywialne o ile rozwiązało się je na kartce. Modelowanie zjawisk jest o tyle problematyczne, że spotykasz się z przeszkodami, których nie można ominąć. Do moich ulubionych i nierozwiązywalnych problemów należą:

Ruch trzech ciał oddziałujących ze sobą grawitacyjnie
Problem nie do rozwiązania metodami analitycznymi. Jedyne rozwiązanie to numeryczne wyliczanie ruchu na jeden krok do przodu. Nie można rozwiązać układu równań różniczkowych reprezentujących wzajemne oddziaływania ciał i wyciągnąć z nich równań ruchu. Siedział nad tym Euler, Newton, Einstein i nie zdziałali nic.

Symulacja oddziaływań sprężystych w sieci krystalicznej
Da się to ruszyć o ile dysponujemy dość dobrym komputerem i sieć nie jest za duża. Do tego typu problemów należą zagadnienia związane z wytrzymałością materiałów czy ruchem bryły sztywnej.

Ogólnie istnieją metodyki pozwalające na symulowanie większości zjawisk. Większość z nich opiera się o obliczenie w miarę dokładnego wyniku dla małej próbki, a następnie wyznaczeniu statystycznego rozwiązania dla N małych próbek. Jeżeli chcemy mieć dokładne wyniki to nasza próbka musi być duża. Obecne superkomputery budowane są z myślą o obliczeniach dla dużych próbek.

Co do "domowych" metod walki z fizyką to jest kilka dobrych praktyk:

  • dokładnie poznaj zjawisko. Przyjrzy się mu z kilku stron. Większość można uprościć stosując odpowiednie twierdzenia. Przykład: ruch bryły sztywnej. Tor można policzyć z góry, bo będzie odpowiadał ruchowi środka masy. Zostaną do policzenia tylko kawałki związane z obrotami.
  • Optymalizuj co się da. Warto robić pseudo optymalizację, czyli sprawdzanie czy dane odpowiadają jakiemuś prostemu przypadkowi i jak tak to zwracanie wcześniej policzonego wyniku.
  • Pamiętaj, ze niektórych problemów nie da się rozwiązać bez wykonania znacznych przybliżeń. Na przykład wahadło matematyczne w ogólnym przypadku ma w sobie całkę cyklometryczną, dlatego też jest przybliżane do małych drgań.

1 użytkowników online, w tym zalogowanych: 0, gości: 1