Zacząłem używać Pythona jako języka programowania do wykonywania wszystkich moich zadań w CFD. Mam bardzo małe doświadczenie w programowaniu. Pochodzę z inżynierii mechanicznej i studiuję na kierunku inżynieria lotnicza. czasami obliczeniowy aspekt CFD staje się bardziej nużący niż manipulowanie równaniami lub robienie matematyki. Jakie są ogólne wytyczne, które przyspieszają uruchamianie …
Jestem pod wielkim wrażeniem seryjnej wydajności wielopoziomowych odwracalnych warunków wstępnych ILU , szczególnie w przypadku heterogenicznego Helmholtza , ale jestem zaskoczony, że nie mogłem znaleźć żadnych implementacji typu open source. W szczególności ILUPACK udostępnia naukowo pliki binarne, ale nie wydaje się, aby publikowali swój kod źródłowy. Czy tak naprawdę nikt …
Rozwiązuję układ dwóch sprzężonych PDE w dwóch wymiarach przestrzennych iw czasie obliczeniowo. Ponieważ oceny funkcji są drogie, chciałbym zastosować metodę wieloetapową (zainicjowaną przy użyciu Runge-Kutta 4-5). Metoda Adamsa-Bashfortha wykorzystująca pięć poprzednich ocen funkcji ma błąd globalny (jest to przypadek, gdy s = 5 w artykule w Wikipedii, do którego odwołuje …
Mam zestaw danych obejmujący miliony punktów danych w 3D. Aby wykonać obliczenia, muszę obliczyć sąsiada (wyszukiwanie zakresu) dla każdego punktu danych w promieniu, spróbować dopasować funkcję, obliczyć błąd dopasowania, powtórzyć to dla następnego punktu danych i tak dalej. Mój kod działa poprawnie, ale jego uruchomienie zajmuje bardzo dużo czasu, około …
Podczas stosowania klasycznej formuły kąta między dwoma wektorami: α=arccosv1⋅v2∥v1∥∥v2∥α=arccosv1⋅v2‖v1‖‖v2‖\alpha = \arccos \frac{\mathbf{v_1} \cdot \mathbf{v_2}}{\|\mathbf{v_1}\| \|\mathbf{v_2}\|} stwierdzono, że dla bardzo małych / ostrych kątów występuje utrata precyzji, a wynik nie jest dokładny. Jak wyjaśniono w tej odpowiedzi Przepełnienie stosu , jednym rozwiązaniem jest użycie arcus tangens zamiast: α=arctan2(∥v1×v2∥,v1⋅v2)α=arctan2(‖v1×v2‖,v1⋅v2)\alpha = \arctan2 \left(\|\mathbf{v_1} …
Wiele algorytmów wykorzystywanych w obliczeniach naukowych ma inną wewnętrzną strukturę niż algorytmy powszechnie uważane za mniej wymagające matematyki formy inżynierii oprogramowania. W szczególności poszczególne algorytmy matematyczne są zwykle bardzo złożone, często obejmują setki lub tysiące wierszy kodu, ale mimo to nie obejmują żadnego stanu (tj. Nie działają na złożoną strukturę …
Szukam biblioteki, która wykonuje operacje macierzowe na dużych macierzach rzadkich bez poświęcania stabilności numerycznej. Macierze będą miały wartości 1000+ na 1000+, a wartości macierzy będą zawierać się w przedziale od 0 do 1000. Będę wykonywać algorytm rachunku indeksu, więc będę generował (rzadkie) wektory rzędowe macierzy szeregowo. Gdy rozwijam każdy rząd, …
Czy istnieje algorytm, który wylicza wykresy odpowiadające pewnej teselacji punktów Delaunaya w 3D? Jeśli tak, to czy istnieje wydajna parametryzacja geometrii, która odpowiada dowolnemu „grafowi Delaunaya”? Staram się wyliczyć systematycznie wszystkie stabilne geometrie cząsteczek o określonym składzie bez żadnej wiedzy z zakresu wiązania itp. EDYCJA: Niech będzie zbiorem wykresów z …
Próbuję odwrócić liczbowo następującą transformację całkowitą: F(y)=∫∞0yexp[−12(y2+x2)]I0(xy)f(x)d xF(y)=∫0∞yexp[−12(y2+x2)]I0(xy)f(x)dxF(y) = \int_{0}^{\infty} y\exp{\left[-\frac{1}{2}(y^2 + x^2)\right]} I_0\left(xy\right)f(x)\;\mathrm{d}x Więc dla danego F(y)F(y)F(y) muszę aproksymować f( x )f(x)f(x) gdzie: fa( x )f(x)f(x) ifa(y)F(y)F(y) są rzeczywiste i dodatnie(są to ciągłe rozkłady prawdopodobieństwa) x , yx,yx,y są rzeczywiste i dodatnie(są wielkościami) W tej chwili mam bardzo niechlujną …
Twierdzenie o rozkładzie Cholesky'ego stwierdza zatem, że każda prawdziwa symetryczna macierz dodatnio określona ma rozkład Choleskiego gdzie jest dolną macierzą trójkątną.M = L L ⊤ L.MMMM=LL⊤M=LL⊤M= LL^\topL.LL Biorąc pod uwagę , wiemy już, że istnieją szybkie algorytmy do obliczania jego współczynnika Cholesky'ego .LM.MMLLL Załóżmy teraz, że otrzymałem prostokątną macierz , …
Witaj społeczności scicomp, Pracowałem w obszarze algorytmów graficznych z wykorzystaniem frameworków takich jak NetworkX (Python), JUNG i YFiles (Java). Wchodzę teraz w obszar obliczeń równoległych i wysokowydajnych. W przypadku nowego projektu szukam biblioteki grafów C ++ z następującymi funkcjami: ma intuicyjny interfejs, który umożliwia tworzenie algorytmów obsługuje operacje dynamiczne: np. …
Jest to prosty problem z wyliczaniem symetrii. Podaję tutaj pełne tło, ale nie jest wymagana znajomość chemii kwantowej. Integralną dwóch cząstek jest: ⟨ ja j | K L ⟩ = ∫ ψ * I ( x ) ψ * j ( x ' ) ψ k ( x ) ψ …
Robię diagonalizację Lanczosa dużej rzadkiej macierzy (~ 2 miliony elementów). Prawie wszystkie kroki w algorytmie Lanzcosa są wykonywane równolegle na GPU, z wyjątkiem diagonalizacji macierzy Lanczosa w celu sprawdzenia zbieżności. W tym celu korzystałem z algorytmu TQLI z receptur numerycznych. Czy istnieją metody znalezienia układu macierzystego macierzy tridiagonalnej, które są …
Pracuję nad problemem, który można zrównoleglić za pomocą pojedynczej operacji mpi_allgather lub jednej operacji mpi_scatter i jednej operacji mpi_gather. Te operacje są wywoływane w pętli while, więc mogą być wywoływane wiele razy. W implementacji ze schematem MPI_allgather zbieram wektor rozproszony dla wszystkich procesów w celu zduplikowanego rozwiązywania macierzy. W drugiej …
Pytanie Jak posortowałbyś chmurę punktów w odniesieniu do nieustrukturyzowanej siatki komórek sześciościennych? Każda komórka ma centrum i unikalną etykietę do jej reprezentowania. Zasadniczo istnieją dwa punkty chmurowe (pierwotna chmura punktów i chmura punktów centrów komórek), ale informacje o geometrii komórki (obwiednia) mogą być przydatne, nie jestem pewien. Wyniki Zadałem trochę …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.