Obróbka wyników analiz MES w programie ParaView

Obróbka wyników analiz MES w programie ParaView

17/03/2023
|

Analizy MES składają się z trzech głównych etapów – preprocessingu (przygotowania symulacji), obliczeń i postprocessingu (obróbki wyników). Dobór oprogramowania do preprocessingu ma istotny wpływ na łatwość przygotowywania analiz i jest to słaba strona większości darmowych rozwiązań. Oczywiście wybór solvera, w którym zostaną przeprowadzone obliczenia również jest kluczowy, ale pod tym względem łatwiej o dobre oprogramowanie. Postprocessing za to często bywa niesłusznie bagatelizowany. Tymczasem poprawna weryfikacja i interpretacja wyników analiz jest niezwykle istotna. Potrzebna jest do tego przede wszystkim wiedza i doświadczenie inżyniera, ale dobre narzędzia wspomagające obróbkę wyników również są ważne.

Praktycznie każdy komercyjny program do symulacji posiada własny moduł umożliwiający obróbkę wyników, ale często potrzebne staje się uniwersalne środowisko tego typu a oprogramowanie open-source z reguły nie posiada własnego postprocessora lub ma on mocno ograniczone możliwości. W takich przypadkach najlepszym rozwiązaniem jest otwarty program ParaView. Został on już krótko przedstawiony w tekście Symulacje CFD w darmowym oprogramowaniu OpenFOAM, ale pod kątem symulacji przepływowych.

Ten artykuł ma na celu szersze zaprezentowanie tego środowiska i jego funkcjonalności ułatwiających postprocessing strukturalnych analiz MES.

Ogólnie o ParaView

ParaView to niezwykle rozbudowane i intensywnie rozwijane oprogramowanie przeznaczone do szeroko rozumianej wizualizacji danych naukowych. Jest to niewątpliwie najlepsze otwartoźródłowe rozwiązanie tego typu. Jego zastosowania nie ograniczają się tylko do postprocessingu różnego rodzaju symulacji, ale dotyczą też m.in. wizualizacji danych z obrazowania medycznego czy badań materiałów. Jedną z największych zalet tego środowiska jest możliwość pracy na bardzo dużych zestawach danych dzięki wykorzystaniu obliczeń równoległych, nawet z użyciem klastrów obliczeniowych czy superkomputerów. Dostępne są także moduły do tworzenia skryptów w Pythonie a otwartość kodu źródłowego umożliwia wprowadzanie własnych modyfikacji w zależności od potrzeb. Ponadto, program pozwala na realistyczny rendering z użyciem tekstur i grafik tła.

ParaView można pobrać z tej strony: Download ParaView. Dostępne jest również forum przeznaczone przede wszystkim do zadawania pytań, zgłaszania problemów i proponowania nowych funkcjonalności (przedtem warto przejrzeć listę dotychczasowych propozycji i zagłosować na te najbardziej interesujące – zwiększy to szanse ich implementacji w przyszłości).

Podstawy pracy w ParaView

ParaView jest programem intuicyjnym i wygodnym w obsłudze. Po jego uruchomieniu wystarczy otworzyć dane w jednym ze wspieranych formatów. Ich lista jest bardzo długa, ale niestety nie wszystkie programy MES, zwłaszcza komercyjne, są wspierane przez ParaView. Wynika to przede wszystkim z kwestii licencyjnych (formaty plików używanych przez komercyjne środowiska są często zastrzeżone) i dostępności różnego rodzaju konwerterów, czyli prostych aplikacji/skryptów przekształcających wyniki do formatu wspieranego przez ParaView. Wiele z nich można znaleźć w serwisie GitHub. Przykładowo, wyniki uzyskiwane z otwartego solvera MES CalculiX (używanego tu do ilustracji) należy przekonwertować z formatu .frd na .vtk lub .vtu i dostępne są do tego różne narzędzia, w tym to: ccx2paraview oraz FreeCAD.

Pomimo wygody pracy w ParaView, ze względu na to jak bardzo jest on rozbudowany, wielu użytkowników ma trudności z rozpoczęciem bardziej zaawansowanej obróbki wyników w tym środowisku i ze znalezieniem opcji przydatnych do postprocessingu analiz MES. Z tego względu, w dalszej części artykułu przedstawione zostaną porady ułatwiające działanie w ParaView.

Zwykle pierwszą czynnością po otwarciu wyników w tym programie jest ustawienie odpowiedniej zmiennej (służy do tego rozwijana lista Coloring z domyślnym ustawieniem Solid Color), sposobu wyświetlania (lista Representation, domyślnie ustawiona na Surface, ustawienie Surface With Edges wyświetla krawędzie siatki elementów skończonych zaś Wireframe tworzy reprezentację krawędziową) oraz chwili czasu, dla której wyświetlane są wyniki (pole Time), jeśli pochodzą z analizy z wieloma klatkami. Przyciski odtwarzacza znajdujące się domyślnie obok listy klatek służą do uruchamiania i kontroli przebiegu animacji. Manipulacji modelem w obszarze roboczym domyślnie dokonuje się następującymi przyciskami myszy: lewy przycisk – obrót, środkowy przycisk – przesuwanie, prawy przycisk lub kółko myszy – przybliżanie/oddalanie. Te domyślnie ustawienia można zmienić w Edit –> Settings –> Camera. Podczas pracy z wynikami analiz 2D, można zauważyć automatyczną zmianę ustawień sterowania. Aby przywrócić standardowy tryb manipulacji, należy użyć przycisku Change Interaction Mode (napis 2D) na pasku nad obszarem roboczym. Istnieje również możliwość wyłączenia tej automatycznej adaptacji do trybu 2D. Służy do tego opcja Edit –> Settings –> Render View –> Default Interaction Mode –> Always 3D. Jest ona dostępna dopiero po włączeniu widoczności zaawansowanych ustawień przyciskiem Toggle advanced properties (symbol koła zębatego). Podczas pracy w ParaView przydatne jest też zapisywanie obiektów utworzonych w drzewie przy pomocy File –> Save State a następnie wczytywanie ich używając File –> Load State.

Filtry w ParaView

Podczas pracy w ParaView korzysta się głównie z tzw. filtrów, których w programie jest ponad 200. Ich pełną alfabetyczną listę można znaleźć w zakładce Filters górnego menu. Dodatkowo są one pogrupowane według kategorii, niedawnego użycia i jako definiowane przez użytkownika ulubione. Możliwe jest ich wyszukiwanie po nazwie. Najważniejsze filtry mają też skróty w postaci przycisków w górnej części okna programu. Filtry tworzą zależności widoczne w drzewie Pipeline Browser po lewej stronie okna programu, co pozwala np. dodawać dalsze operacje do utworzonego przekroju. Widocznych może być kilka filtrów jednocześnie – wystarczy włączyć ich ikony w kształcie oka w drzewie. Jeśli danego filtra z listy w górnym menu nie da się dodać do aktualnie wybranego obiektu w drzewie (nazwa filtru jest wyszarzona) to najechanie na niego kursorem powoduje wyświetlenie się podpowiedzi dotyczących wymagań filtru na dole ekranu. Poniżej zostały wymienione filtry szczególnie przydatne w obróbce wyników analiz MES.

1. Warp By Vector – pozwala wyświetlić zdeformowany kształt modelu z podaną skalą.

2. Clip – tworzy przekroje, wykonywane zazwyczaj za pomocą płaszczyzny, ale dostępne są też inne geometrie służące do cięcia. Odznaczenie opcji Show Plane chowa płaszczyznę cięcia. Z kolei zaznaczenie opcji Crinkle clip powoduje, że elementy, przez które przechodzi geometria tnąca nie są przecinane.

3. Slice – tworzy przekroje, również dostępne w kilku wariantach oprócz płaszczyzny. W przeciwieństwie do Clip, dane są wyświetlane tylko na geometrii tnącej.

4. Calculator – służy do wprowadzania równań operujących na istniejących wynikach by stworzyć nowe. Przy pomocy tego filtra i odpowiednich formuł można m.in. dokonać transformacji wyników do innego układu współrzędnych (aby np. obliczyć naprężenia osiowe i obwodowe, co zostało pokazane na poniższym rysunku) lub uzyskać mapę współczynnika bezpieczeństwa. Jego bardziej zaawansowanym odpowiednikiem jest Python Calculator.

ParaView 1

5. Contour – tworzy wykresy w postaci izopowierzchni lub izolinii (w 2D).

6. Glyph – tworzy wykresy w postaci symboli (zwykle strzałek). Przydatny do wizualizacji wyników takich jak strumienie ciepła z analiz termicznych.

7. Plot Over Line – generuje krzywe pokazujące zmianę wybranej wartości wzdłuż zdefiniowanej ścieżki, np. rozkład naprężeń po grubości rury.

8. Reflect – tworzy odbicie lustrzane modelu, przydatne dla analiz korzystających z symetrii planarnej.

9. Transform – przesuwa, obraca lub skaluje model. Kilkukrotne jego użycie z opcjami Translate lub Rotate pozwala tworzyć odpowiednio szyki prostokątne i kołowe, co jest przydatne dla analiz korzystających z periodyczności lub symetrii cyklicznej. Innym zastosowaniem może być wyświetlanie efektów działania różnych filtrów obok siebie.

10. Linear Extrusion – dodaje grubość do powierzchni, co jest przydatne do wyświetlania grubości płaskich powłok (dla zakrzywionych na razie nie ma odpowiedniego narzędzia do tego celu) czy modeli płaskiego stanu naprężeń/odkształceń. Może wymagać wcześniejszego użycia filtra Extract Surface.

11. Rotational Extrusion – dokonuje wyciągnięcia powierzchni przez obrót, co umożliwia trójwymiarową wizualizację wyników analiz na modelach osiowosymetrycznych. Efekt działania tego filtra został pokazany na rysunku poniżej.

ParaView 2

12. Temporal Statistics – generuje dane dotyczące zmienności wyników w czasie. Pozwala np. znaleźć maksymalną lub minimalną wartość danej zmiennej spośród wszystkich klatek.

13. Probe Location – pozwala sprawdzić wartości zmiennych w wybranym punkcie, użycie kombinacji klawiszy Ctrl+P po najechaniu na dowolne miejsce na modelu powoduje przyczepienie próbnika do najbliższego węzła siatki, zaś sam klawisz P przyczepia próbnik bezpośrednio do wskazanego miejsca. Aby nie wyświetlać w pojawiającej się tabeli wartości wszystkich zmiennych dla danego punktu, można dokonać ich wyboru przy pomocy listy Toggle column visiblity. Alternatywą dla tego filtra jest narzędzie Find Data (klawisz V) ze zmienną wybraną z listy Point Labels lub Cell Labels i narzędziem Select Points On (klawisz D) lub Select Cells On (klawisz S). W ten sposób można również sprawdzić numery węzłów i elementów. Jeszcze inną metodą może być użycie narzędzi Hover Cells OnHover Points On, ale nie sprawdza się to przy dużej liczbie zmiennych w modelu – wyświetlane są wartości ich wszystkich dla wybranego węzła lub elementu.

14. Plot Selection Over Time – tworzy wykres zmian wyników w czasie dla wcześniej wybranej lokalizacji. Po zaakceptowaniu, w zakładce Properties opcji filtra pojawia się lista Series Parameters, z której można wybrać zmienne do uwzględnienia na wykresie.

15. Extract Selection – wyświetla tylko zaznaczone wcześniej elementy.

16. Normal Glyphs – wyświetla w formie strzałek kierunki normalne, co może być przydatne dla powłok.

17. Extract Time Steps – wyciąga wybrane klatki z wyników analizy.

18. Temporal Array Operator – pozwala sumować, odejmować, mnożyć lub dzielić wyniki z 2 klatek.

19. Programmable Filter – umożliwia pracę na danych przy pomocy skryptów w Pythonie. Przykładowo, poniższy prosty skrypt sumuje wyniki z 2 zestawów danych, co może być użyteczne przy pracy na wynikach analiz liniowych z wykorzystaniem superpozycji:

v_0 = inputs[0].PointData[‚nazwa_zmiennej’]

v_1 = inputs[1].PointData[‚nazwa_zmiennej’]

output.PointData.append(v_1 + v_0, ‚sum’)

20. Plot Data – tworzy wykres ze wskazanych danych, np. wczytanych z pliku tekstowego.

Zaznaczanie węzłów i elementów w ParaView

Podczas omawiania filtrów, wspomniane zostały krótko narzędzia do zaznaczania węzłów i elementów. Dostępne są one w formie małych przycisków tuż nad obszarem roboczym oraz jako skróty klawiszowe. Przytrzymanie klawisza Ctrl dodaje nowe obiekty do aktualnego zaznaczenia a Shift je usuwa. Zaznaczenie można w każdej chwili usunąć przyciskiem Clear selection z ikoną kosza. Wspomniane wcześniej Find Data pozwala odwrócić zaznaczenie (opcja Invert selection). Kolejne narzędzia to różne sposoby zaznaczania:

  • Select Cells On / Select Points On – prostokąt przeciągany myszką wybiera tylko elementy/węzły na wierzchu, bez wchodzenia w głąb modelu,
  • Select Cells Through / Select Points Through – prostokąt przeciągany myszką zaznacza wszystko na swojej drodze, wchodząc w głąb modelu,
  • Select Cells With Polygon / Select Points With Polygon – zamiast prostokąta wykorzystuje rysowany kursorem wielokąt, zaznaczenie działa tak jak pierwszy wariant (bez wchodzenia w głąb),
  • Interactive Select Cells On / Interactive Select Points On – zaznacza bezpośrednio wskazany i kliknięty element/węzeł.

Istotną, również pod kątem wybierania obiektów z siatki, opcją jest przełączanie widoku między domyślną perspektywą a widokiem ortogonalnym. Ustawienie to można znaleźć pod nazwą Camera Parallel Projection w zakładce Properties danego filtra. Jeśli ta lub inna potrzebna opcja nie jest widoczna, należy kliknąć przycisk Toggle advanced properties z ikoną koła zębatego tuż przy pasku wyszukiwania opcji w zakładce Properties.

Legenda kolorów w ParaView

Kluczowe są także opcje związane z legendą i mapą kolorów. Można je znaleźć w sekcji Coloring w zakładce Properties okna danego filtra. Najbardziej przydatny jest przycisk Choose preset, pozwalający wybrać zestaw kolorów. Przy jego pomocy da się np. zmienić kolory z domyślnego trybu Cool to Warm na tradycyjną tęczę (grupa Rainbow). Przykładowe schematy kolorów zostały pokazane na rysunku poniżej. Obok znajduje się też przycisk służący do chowania i wyświetlania legendy (Show/hide color legend) oraz przycisk Edit color legend properties, umożliwiający m.in. zmianę tytułu, położenia, orientacji i czcionki legendy. Można tam również zmienić tryb wyświetlania liczb. Przykładowo, aby uzyskać tryb zmiennoprzecinkowy należy najpierw włączyć widoczność wszystkich opcji (przycisk Toggle advanced properties) a następnie wpisać ten ciąg znaków w polach Label FormatRange Label Format: %-#6.1f. Z kolei dla formatu naukowego można użyć ciągu: %-#6.1e lub %-#6.1E. Przydatne bywa też włączanie wyświetlania wartości maksymalnej i minimalnej pod legendą (Draw Data Range Labels). Opcja Custom Labels pozwala wybrać które dokładnie wartości będą wyświetlone przy legendzie. Istotny jest również przycisk Edit color map. Przy jego pomocy można m.in. zmienić liczbę kolorów i włączyć lub wyłączyć ich dyskretyzację, co jest szczególnie widoczne przy niewielkiej liczbie kolorów (sekcja Color Discretization). Da się nawet stworzyć własny zestaw kolorów poprzez modyfikację istniejącego presetu. W tym celu należy dodać tzw. punkty kontrolne klikając lewym przyciskiem myszy na schemacie przedstawiającym legendę w poziomie, wyświetlanym w sekcji Mapping Data. Punkty można usuwać środkowym przyciskiem myszy. Po ich zaznaczeniu i wciśnięciu klawisza Enter, pojawia się okno, z którego można wybrać nowy kolor. Przydatny jest też przycisk do włączania osobnej legendy dla danego filtra – Use separate color map. Wymienione wyżej opcje znajdują się też na górnym pasku, obok listy, z której wybiera się zmienne do wyświetlenia. Są tam też dodatkowe przyciski pozwalające m.in. przeskalować mapę kolorów do aktualnego zakresu danych (przydatne po zmianie filtra) – Rescale to Data Range lub do ręcznie zdefiniowanego zakresu danych (przydatne do odcięcia zbyt wysokich lub zbyt niskich wartości) – Rescale to Custom Data Range.

ParaView 3

Narzędzie Find Data

Wspomniane już kilkukrotnie narzędzie Find Data ma jeszcze dodatkowe zastosowania. Pozwala np. wskazać miejsca z maksymalną lub minimalną wartością jakiejś zmiennej. W tym celu należy, po wybraniu źródła danych (Data Producer), ustawić w sekcji Selection Criteria zmienną i tryb is min or is max a następnie kliknąć przycisk Find Data. Inną funkcją tego narzędzia jest wyświetlanie numerów elementów i węzłów w całym modelu (może być przydatne w przypadku pracy na prostych modelach testowych). Aby to zrobić, trzeba w Selection Criteria ustawić kolejno ID, is >=, 0 a następnie w Selection Labels zmienić Cell Labels lub Point Labels na ID. Jeśli nie są wyświetlane numery wszystkich elementów/węzłów to w ustawieniach programu (Edit –> Settings –> General) należy rozwinąć zaawansowane opcje (symbol koła zębatego) i zmienić Maximum Number of Data Representation Labels na odpowiednio dużą liczbę.

Animacje w ParaView

W ParaView dostępnych jest klika trybów animacji. Podstawowy tryb to animacja zmian w czasie. Aby z niego skorzystać wystarczy użyć przycisku Play bez potrzeby dodatkowych ustawień. Drugim przydatnym trybem jest animowanie przeskalowanej deformacji. Aby z niego skorzystać, należy najpierw dodać filtr Warp By Vector a następnie włączyć View –> Animation View i w nowym oknie widoku animacji kliknąć przycisk z symbolem + przy nazwie filtra Warp By Vector. Spowoduje to dodanie nowej ścieżki do osi animacji. Należy dwa razy kliknąć na niej lewym przyciskiem myszy i wprowadzić zakres współczynnika skali deformacji. Użycie przycisku Play spowoduje włączenie animacji. Warto również wspomnieć o możliwości animowania jednocześnie zmian w modelu i wykresu historii danej zmiennej w czasie. Wystarczy, że aktywny jest wykres wygenerowany filtrem Plot Selection Over Time. Wciśnięcie przycisku Play spowoduje uruchomienie animacji z linią wskazującą aktualną chwilę czasu na wykresie. Dostępny jest też filtr do animacji postaci drgań z analiz modalnych – Animate Modes.

Inne przydatne opcje i narzędzia

Pozostałe przydatne opcje i narzędzia dotyczą głównie obszaru roboczego, uzyskiwania informacji o modelu oraz tworzenia raportów. Często konieczna jest zmiana tła, które w ParaView domyślnie jest granatowe. Można to zmodyfikować w zakładce Properties danego filtra. W sekcji Background jest opcja Use Color Palette for Background, którą należy odznaczyć a następnie wybrać odpowiedni kolor po wciśnięciu przycisku Background. Często przydaje się białe tło. Można również skorzystać z gotowych stylów tła, dostępnych po wciśnięciu przycisku Load a color palette na górnym pasku programu. Jest tam również białe tło.

Inną kwestią związaną z widocznością jest przezroczystość modelu, która niekiedy pozwala lepiej coś zobrazować. Da się ją włączyć w zakładce Properties danego filtra (opcja Opacity). W tej samej zakładce można zmienić kolor krawędzi elementów wyświetlanych w trybie widoczności siatki (opcja Edge Color) oraz ustawienia oświetlenia (przydać się może zwłaszcza opcja Ambient pozwalająca rozjaśnić model). Dodatkowe opcje związane ze światłami są dostępne w View –> Light Inspector.

Często też konieczne jest wyświetlenie różnych danych w oddzielnych oknach. Aby to zrobić, trzeba skorzystać z przycisku Split Horizontal Axis lub Split Vertical Axis tuż nad prawym górnym rogiem obszaru roboczego. Wtedy zostanie on podzielony odpowiednio w poziomie lub w pionie. Takich podziałów można dalej dokonywać na kolejnych oknach i w razie potrzeby zamykać je przyciskiem Close. W nowo utworzonym oknie należy wybrać Render View aby uzyskać standardowy widok 3D. Dostępna jest również opcja synchronizacji manipulacji widokiem 3D dla wielu okien. Aby z niej skorzystać, trzeba kliknąć prawym przyciskiem myszy w dowolnym miejscu aktywnego okna i wybrać Link Camera a następnie wskazać drugi widok do powiązania. Przydatne może być umieszczenie w wybranym oknie rysunku. Obraz wczytuje się przy pomocy File –> Open, ale następnie trzeba wybrać narzędzie do otwierania (JPEG Series Reader lub PNG Series Reader) a po wczytaniu rysunku odznaczyć opcję Map scalars w jego zaawansowanych właściwościach.

Innym sposobem na takie porównania jest wybranie Render View (Comparative) zamiast Render View w nowym oknie. Spowoduje to wyświetlenie okna z 4 częściami. Narzędzie View –> Comparative View Inspector pozwala zmienić liczbę tych podziałów. W tym trybie manipulacja jest domyślnie powiązana między wszystkimi częściami okna. We wszystkich częściach wyświetlane są dane z tego samego źródła (filtra), ale można wybierać parametry, których różne wartości będą użyte w poszczególnych częściach okna. Może to być np. czas, co pozwala wyświetlać jednocześnie różne klatki analizy. Parametry dodaje się w oknie Comparative View Inspector, wybierając je z listy (najpierw należy wybrać filtr jeśli parametrem nie jest czas) obok przycisku + a następnie dodając tym przyciskiem. Tabela na dole okna Comparative View Inspector zawiera wartości parametrów w poszczególnych częściach obszaru roboczego. Zmieniając je wpływa się na to jaki stan modelu dana część obszaru roboczego wyświetla. Ten tryb widoku został przedstawiony na poniższym rysunku.

ParaView 4

Często przydaje się możliwość dokonania prostych pomiarów na modelu. Służy do tego narzędzie Ruler dostępne na górnym pasku okna programu. Podobnie jak w przypadku filtra Probe Location, klawisz P umieszcza punkt pomiarowy w dowolnym miejscu siatki a kombinacja Ctrl+P przyciąga go do najbliższego węzła. Pozostałe kwestie sterowania są opisane w zakładce Properties narzędzia. Do sprawdzenia objętości można zaś wykorzystać filtr Integrate Variables i ustawić Attribute na Cell Data. Ważne może być również uzyskanie informacji o siatce elementów skończonych. Pozwala na to narzędzie View –> Statistics Inspector. Można w nim znaleźć m.in. liczbę elementów i węzłów.

Ostatnią kwestią są opcje ułatwiające tworzenie raportów. Bardzo ważna jest możliwość tworzenia zrzutów ekranu wewnątrz programu. Robi się to przy pomocy File –> Save Screenshot. Dostępnych jest kilka ustawień, w tym zmiana koloru tła, dzięki czemu nie trzeba tego robić podczas samej wizualizacji wyników. Tło może być również przezroczyste. Pozostałe opcje dotyczą przede wszystkim rozdzielczości i formatu pliku. Oczywiście można również eksportować animacje (File –> Save Animation), mając do dyspozycji podobne opcje jak przy zapisywaniu zrzutów ekranu. Dodatkowo jest możliwość zmiany szybkości animacji. Innym przydatnym narzędziem jest generowanie prostych raportów zawierających dane w formacie .txt lub .csv. Wystarczy użyć File –> Save Data i wybrać odpowiedni zestaw formatów oraz uwzględnić dany format w nazwie. Następnie można wybrać które kroku czasowe i wyniki (opcja Choose Arrays To Write) mają zostać wyeksportowane.

Podsumowanie

ParaView posiada wiele narzędzi przydatnych podczas obróbki wyników analiz MES. Braki w funkcjonalnościach do tego służących są niewielkie i zwykle da się je obejść, często przy pomocy programowalnych filtrów lub kalkulatora. Program świetnie radzi sobie z bardzo dużymi zestawami danych, co ma szczególne znaczenie podczas pracy z wynikami analiz CFD, ale również MES w mechanice czy przepływie ciepła. Pewnym utrudnieniem może być często zachodząca konieczność konwersji danych do formatu obsługiwanego przez ParaView, ale zwykle dostępne są odpowiednie narzędzia do tego a programy do symulacji typu open-source bardzo często wręcz bazują na ParaView do postprocessingu. Należy też pamiętać o tym, iż wiele możliwości obróbki wyników zależy od tego jakie dane wczytuje się do programu – w zależności od solvera, z którego pochodzą mogą się one znacznie różnić pod względem formatu i niektóre ograniczenia wynikają właśnie ze sposobu zapisu danych. W razie wątpliwości najlepiej zasięgnąć rady na odpowiednim forum.