Kafes için (FEM için) ortak dosya / veri formatı nedir?


13

Bir FEM simülasyonu geliştiriyorum. Erken test için, kendi kendine yazılan basit bir yazı ve kafes grafiğinin görselleştirilmesini kullanacağım. Ama programımı mevcut bir mesher tarafından oluşturulan verileri kullanacak şekilde hazırlamak ve mevcut görselleştirme araçlarına göndermek istiyorum.

(FEM) kafesleri için dosya biçimi ve dahili veri biçimi için önerilen (yarı) bir standart var mı?


4
Ağda okumak için Çıkış II ve çıktı yazmak için VTK.
stali

Yanıtlar:


8

Kısa cevap hayır, standart bir format yok. Ancak, giriş / çıkış için Gmsh ve çıkış için VTK gibi bazı yaygın olanlar vardır.

Bir karar vermeden önce ne yapmak istediğinizi bulmanız gerekir. (Küçük) programınızın bir süre olmasını istiyorsanız, zevkinize ve ihtiyaçlarınıza en uygun formatı seçebilirsiniz. Gelecekte "daha büyük" bir programa geçmeyi planlıyorsanız, şu anda dosya biçimlerini yönetmeye başlamak iyi bir fikir olacaktır. Ticari ön / son işlemcileri kullanmayı planlıyorsanız, her yeni sürümde olanları "güncellediğinden" ve bu durumun başlarında bir ağrı olabileceğinden, biçimlerine bağlı kalmanızı öneririm.

Aşağıda bazı (açık kaynak) seçenekleri listeliyorum.

Ön işleme

Rötuş

  • Paraview / Mayavi ile görselleştirme . Ardından VTK dosya formatlarını kullanın . Paraview kullanım kılavuzunu buradan kontrol edebilirsiniz .
  • Ayrıca Gmsh'de işlem sonrası da yapabilirsiniz.
  • Salome-Meca post-processing için başka bir seçenektir, VTK ile iyi çalışır.

Bence VTK benim için doğru format: 1. Kafes için girdi ve sonradan işleme için çıktı olarak kullanabilirim. 2. İşleyecek bir kütüphane var. 3. Yaygın gibi görünüyor, örneğin gmesh bunu üretebilir. Bu varsayımlar iyi mi?
Michael

1
1. Modelinize malzeme özellikleri, BC'ler ve kısıtlamaların dahil edilmesini göz önünde bulundurmalısınız. Bunları VTK'da nasıl uygulayacağımdan tam olarak emin değilim, ancak muhtemelen bir geçici çözüm bulabilirsiniz. 2. Evet, ancak seçtiğiniz programlama diline bağlıdır. 3. Evet, yaygındır. Doğrudan vtk(C ++, Java veya Python'da), Mayavi, Paraview, VisIt veya hatta Chrome : P kullanabilirsiniz. Ve evet, onları fiziksel gruplardan emin değilken, Gmesh'de üretebilirsiniz.
nicoguaro


3

Bunun için bir standart var: ISO / TS 10303 (1380 ila 1386 parçalarıyla başlayın).

ISO tarafından kaçırılmadan önce, 1980'lerde başlayan bu girişim PDES / STEP olarak biliniyordu. Bkz. Https://www.pdesinc.org/index.html

Ancak, zorunlu bir gereklilik olan bir ortamda çalışmadığı sürece kimsenin bunu çok fazla kullanmadığına inanmıyorum. Çok sayıda uluslararası komite, orijinal iyi niyetin altını çizmede mükemmel bir iş çıkardı ve bir şirketin genel yönetim yapısını tanımlamaktan tarihler ve saatler yazmak için doğru biçime kadar her şeyi kapsamaya çalışan bir standart üretti (ve hayır, ben şaka yapmıyorum).


3

FEM için dosya formatlarının sayısı, kısmen her yazılım paketinin geçmişte kendi formatını uygulamasından dolayı saçma.

resim açıklamasını buraya girin

( Xkcd'den .)

Biçimler arasında dönüştürme ağrısını hafifletmek için meshio oluşturdum , bu nedenle meshio tarafından desteklenen herhangi bir biçimi kullanırsanız, gelecekte kolayca geçiş yapabilmeniz gerekir.

Bildiğim tüm formatlardan VTU ve XDMF şahsen en çok kullandığım formatlar.



0

İkinci olarak dosya çıktısı için VTK kullanımı. Çok genel bir kafes yapısı kullanmak isterseniz, sizi bir konsorsiyum (Boeing ve NASA dahil) tarafından sağlanan kendi kütüphanesi ile bir açık kaynak ağ biçimi olan CGNS kütüphanesi (CFD Genel Gösterim Sistemi) yönüne yönlendiririm. . Düğümlerin, özelliklerin, sınır koşullarının vb. Bir listesini okumak bu kütüphane için son derece kullanışlıdır ve kütüphanenin kendisinin derlenmesi çok kolaydır. Kütüphane C ++ 'dadır, ancak Fortran ile bağlanabilir.

Şirket içi kodumuzda kullanıyoruz ve çok verimli bir format olduğunu gördüm. İkili dosyalar için başlık altında HDF5 kullanır. Ayrıca, ANSYS, Salome, GMSH bu formata ihracatı değişik derecelerde desteklemektedir. İşte github: https://cgns.github.io/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.