Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen ffc komutudur.
Program:
ADI
FFC - FEniCS Form Derleyicisi
SİNOPSİS
FFC [-h] [-V] [-v] [-s] [-e] [-l dil] [-r gösterimi] [-f seçeneği] [-O] [-q
kareleme kuralı] ... input.ufl ...
AÇIKLAMA
Çok doğrusal formları verimli düşük seviyeli kodda derleyin.
FEniCS Form Derleyici FFC, her biri bir veya daha fazla belirten bir veya daha fazla dosyayı girdi olarak kabul eder.
daha çok doğrusal formlar ve verilen formları verimli düşük seviyeli kodda derler.
çok doğrusal formları temsil eden tensörlerin otomatik montajı. Özellikle, FFC
değişken bir problemi tanımlayan bir çift çift doğrusal ve doğrusal form derler.
ilgili lineer sistemi verimli bir şekilde monte etmek için kullanılabilir.
Varsayılan olarak, FFC, UFC spesifikasyonu sürüm 1.0'a (Unified
Form-montaj Kodu, bkz. http://www.fenics.org/) ancak bu, bir
farklı çıktı dili (seçenek -l). Ayrıca yeni çıktı dilleri eklemek de mümkündür.
FFC.
FFC'nin tam açıklaması için, kullanılan form dilinin bir belirtimi de dahil olmak üzere,
çok satırlı formları tanımlayın, FEniCS web sayfasında bulunan FFC kullanım kılavuzuna bakın:
http://www.fenics.org/
SEÇENEKLER
-h, --yardım et
Yardım metnini görüntüleyin ve çıkın.
-V, --versiyon
Sürüm numarasını görüntüleyin ve çıkın.
-v, --ayrıntılı
Ayrıntılı mod, daha fazla çıktı yazdırılır. -s ile çakışıyor.
-s, --sessiz
Sessiz mod, çıktı yazdırılmaz. -v ile çakışıyor.
-e, --hata-kontrol
Hata kontrol modu, hedefe yönelik hata için yararlı olan bir dizi ek form
kontrol oluşturulur ve derlenir.
-l dil, --dilim dil
Çıktı dilini 'ufc' (varsayılan) veya 'dolfin' (küçük bir katmana sahip UFC) olarak belirtin
DOLFIN'e özgü bağlamalar).
-r temsil, --temsil temsil
'Dördüncül' biri olan ön hesaplama ve kod üretimi için temsili belirtin
(varsayılan) veya 'tensör'.
-f seçenek
Kod oluşturma seçeneklerini belirtin. Kullanılabilir seçeneklerin listesi aşağıdakilere bağlıdır:
belirtilen dil (format). Mevcut seçenekler şunları içerir: -fblas, -fno-foo,
-fkesinlik=n, -fprecompute_basis_const, -fprecompute_ip_const,
-fbasitleştirme_ifadeleri, -feliminate_zeros, -fquadrature_degree=n ve, -fsplit,
-fno_ferari, aşağıda ayrıntılı olarak açıklanmıştır.
-f blas
Tensör ürünlerini hesaplamak için BLAS kullanan kod oluşturun. Bu seçenek şu anda
yok sayılır, ancak BLAS seçeneği açıkken kod boyutunu küçültmek için kullanılabilir.
(yeniden) gelecek sürümlerde uygulanmaktadır.
-f hayır
UFC işlevi için 'foo' adında kod oluşturmayın. Tipik seçenekler şunları içerir: -fno-
değerlendirmek_basis ve -fno-evaluate_basis_türevleri boyutunu küçültmek için
Bu işlevler gerekli olmadığında oluşturulan kod.
-f kesinlik=n
Oluşturulan kodda anlamlı basamak sayısını n olarak ayarlayın. varsayılan değer
n sayısı 15'tir.
-f precompute_basis_const
Dörtlü gösterim için optimizasyon seçeneği. Bu seçenek şu durumlarda yoksayılır:
optimizasyon kullanılmaz (bkz. -O seçeneği) ve aynı zamanda şu anlama gelir:
-fprecompute_ip_const seçenek. Bu seçenek, terimleri önceden hesaplayan kod üretecektir.
temel endeksleri içeren döngülerde sabit olan. Bu şuna neden olabilir:
operasyon sayısının azaltılması ve böylece çalışma zamanı verimliliğinin artırılması
oluşturulan kod. Ancak, iyileştirmeler GCC derleyici seçeneklerine bağlıdır.
yanı sıra varyasyonel formun özellikleri.
-f precompute_ip_const
Gibi -fprecompute_basis_const kodun olacağı tek farkla seçenek
içeren döngülerde sabit olan terimleri hesaplamak için oluşturulur.
yalnızca entegrasyon noktaları.
-f basitleştir_ifadeler
Dörtlü gösterim için optimizasyon seçeneği. Bu seçenek şu durumlarda yoksayılır:
optimizasyon kullanılmaz (bkz. -O seçenek). İfadeleri sadeleştirmeden önce
yerel eleman tensörünü hesaplayın, tanımlamak için genişletilirler ve
geometri ve entegrasyon açısından sabit olan ön hesaplama terimleri
puan. Bu işlem, birçok yeni oluşturmayı gerektirdiğinden çok pahalı olabilir.
belleğin tükenmesine neden olabilecek terimler.
-f elimine_zeros
Dörtlü gösterim için optimizasyon seçeneği. Bu seçenek şu durumlarda yoksayılır:
optimizasyon kullanılmaz (bkz. -O seçenek). Temel fonksiyon değerlerini içeren tablolar
yalnızca sıfır olmayan değerler içerecek şekilde sıkıştırılacaktır. Bu azaltacak
döngü aralıkları ve dolayısıyla işlem sayısı, ancak bir eşleme olduğundan
değerleri eleman matrisine doğru bir şekilde eklemek için bazı
tepegöz tanıtılır. Bu optimizasyon seçeneği genellikle en etkili olanıdır.
diğer optimizasyon seçeneklerinden biriyle kombinasyon.
-f dördün_derecesi=n
n derecesine kadar doğru bir kareleme kuralı üretecektir.
formun polinom derecesi. Bu seçenek yalnızca UFL formları için geçerlidir ve
belirtilen derece, verilen formun hiçbir derecesi olmayan TÜM terimleri için geçerli olacaktır.
meta veriler aracılığıyla belirtildi! Varsayılan olarak FFC dereceyi belirleyecektir
formdan otomatik olarak
-f bölmek
Bildirimler ve uygulama için ayrı dosyalar oluşturun.
-f no_ferari
-O bayrağı ayarlanmış olsa bile FErari optimizasyonlarını atlayın. Bu yalnızca şu durumlarda etkilidir:
tensör gösterimi kullanılır. Bu seçenek, aşağıdakilerle birlikte kullanılabilir:
-O bayrağı, yalnızca FFC'ye talimat vererek potansiyel olarak çok uzun derleme sürelerinden kaçınmak için
kareleme gösterimi kullanıldığında optimize edin.
-O, --optimize etmek
Optimize edilmemiş koda kıyasla daha düşük işlem sayısıyla optimize edilmiş kod oluşturun
yerel eleman tensörünün montajı için. Bu, genel olarak
kodun çalışma zamanı performansı. Eğer temsil (bkz. -r seçenek) 'tensör'
daha sonra FFC, FErari optimizasyonlarını kullanacaktır. Bu seçenek FErari gerektirir ve
dışındakiler için (derleme zamanında) çok maliyetli olabileceğinden dikkatli kullanılır.
basit formlar. Temsil 'dörtgen' ise, derleme zamanı artar
çok karmaşık formlar için FErari'ye kıyasla çok daha az sert olma eğilimindedir. NS -O
kareleme temsili seçeneği aşağıdaki optimizasyon işaretlerini açar:
-fbasitleştirme_ifadeleri -feliminate_zeros
-o dizin, --çıktı-dizini rehber
Oluşturulan dosyaların yazılacağı dizini belirtin. Varsayılan
çıktı dizini geçerli ('.') dizinidir.
-q kural, --dörtlük-kural kural
Formları entegre ederken kullanılması gereken kareleme kuralını belirtin. Bu
hem tensör hem de karesel gösterimi etkileyecektir. Şu anda mevcut seçenekler
'varsayılan' ve 'standart'. 'Varsayılan' seçenek elle uygulanan kapsar
daha düşük bir hassasiyet derecesine sahip üçgenler ve dörtyüzlüler için kareleme kuralları
veya altıya eşittir. 'Kanonik' seçeneği, karelemeyi hesaplamak için FIAT'a dayanır
basitlere eşlenen Gauss--Legendre--Jacobi kuralına dayanan kural. Tarafından
varsayılan olarak, FFC 'varsayılan' seçeneği kullanmayı deneyecektir çünkü bu genellikle
üretilen en verimli kod. Bu mümkün değilse (polinom
integralin derecesi altıdan büyükse veya hücre bir 'üçgen' değilse
veya 'tetrahedron'), FFC otomatik olarak 'kanonik' kuralı uygulayacaktır. eğer numara
'Kanonik' kural tarafından kullanılan entegrasyon noktalarının sayısı verimli olmak için çok büyük
hesaplama, seçenek -fquadrature_degree kullanılabilir.
BÖCEK
Yorum, soru, hata raporları vb. [e-posta korumalı].
onworks.net hizmetlerini kullanarak ffc'yi çevrimiçi kullanın