Material/cs

Tato stránka je o materiálovém datovém systému FreeCADu.

Koncept
Protože je obtížné až nemožné definovat daný nebo kompletní seznam materiálových vlastností, jdeme otevřenější cestou. Každý objekt ve FreeCADU, který má něco společného s materiálem bude mít vlastnost nazvanou "Materiál", což je seznam klíčů a hodnot, který může udržovat nekonečný počet materiálových vlastností. Vzhledem k tomu, že to je velmi otevřený a rozšiřitelný způsob práce s takovými daty, přináší také nebezpečí chaosu. Proto tato stránka definuje některá pravidla a základní vlastnosti pro práci s takovouto mapou materiálových vlastností.

Pravidla
Každá sada vlastností má pouze jeden povinný údaj což je "Name" (Jméno). To je primární klíč materiálu. Zbytek materiálových vlastností už je volitelný nebo může být získaný z databáze materiálů.

Jména vlastností (klíče) jsou řazena podle textových řetězců oddělených podtržítkem. První podřetězec je pojmenován podle aplikace nebo standardu, následující mohou být použity pro další skupiny vlastností. Hodnoty také mohou být seskupovány podle podtržítek, např. k oddělení různých druhů oceli. Příklady:
 * Name=Steel_Cast
 * SpecificWeight=7.85 (at 20° in kg/mm3)
 * EN10027_name = S235JR+AR (steel standard EN 0027-1)
 * FEM_YoungsModulus = xx ( in  mm−1·kg·s−2 )
 * FEM_YoungsModulus_Z
 * FEM_YoungsModulus_X

Každá vlastnost má běžně čitelný popis na této Materiálové stránce, s odkazem na další informace (např. Wikipedie).

Pro každou vlastnost musí být uvedena jednotka založená na interních jednotkách FreeCADu mm-kg-s! To umožňuje konzistentní použití a překlady.

Klíč (Jméno) a hodnota vlastnosti používá pouze ASCII znaky (7-bitů, nejsou povolena diakritická znaménka - háčky, čárky atd.). Klíče jsou zapisovány Camel-Case (slova spojena bez mezer, každé slovo začíná velkým písmenem), ale jsou interpretována bez rozlišení malých a velkých znaků.

Podtržíka později umožňují stromový pohled editoru nebo prohlížeči, kde mohou vytvářet složky.

Nástroje
Existují některé dobré zdroje, které umožňují snadnější práci s materiálem:
 * Kalkulátor jednotek k získání informací o materiálu v jednotkách potřebných ve FreeCADu
 * http://www.matweb.com/ bezplatná databáze materiálů s tisícovkami materiálových hodnot

Materiálová databáze
Máme-li implementován výše uvedný standard, bylo by nesmyslné ukládat všechny vlastnosti znovu a znovu do objektů. V zásadě můžeme vybudovat materiálovou databázi se jménem materiálu jako primárním klíčem. Takže pokud nemáte nějaké specální požadavky pro Váš materiál, jednoduše definujte např. Name=Steel a FreeCAD může načíst všechny vlastnosti z databáze. Všechny další vlastnosti, které přidáte nebo změníte, přepíší ty případně načtené z databáze se stejným jménem.

V budoucnosti bychom mohli takovou databázi hostovat někde na webu a vytvořit univerzální OpenSource materiálovou databázi.

Aktuálně přemýšlím o kompilaci malé kolekce dat (datasetu) se sadou "základních" materiálů a jejich základních vlastností a o plné verzi založené na SQLite.

Material.py
Protože správa materiálových vlastností je otravná práce, měli bychom implementovat Modul Pythonu nazvaný Material.py. Bude to místo pro provádění všech druhů pomocných metod pro práci s materiálem.
 * Výpočet hmotnosti z objemu a měrné hmotnosti
 * Převody v různých systémech měrných jednotek
 * Výpočty potřebné ve speciálních aplikacích (např. FEM)
 * a cokoliv dalšího o čem ještě nevíme

Modul by měl být implementován tak, aby mohl běžet ve FreeCADu nebo samostatně z příkazové řádky (mapa materiálových vlastností se bude dodávat jako mapa v Pythonu).

Souborový formát materiálové karty ve FreeCADu
Práce s materiáelm znamená často import/export materiálových definicí. Proto je potřebný souborový formát. Protože máme pouze tvar klíč/hodnota, můžeme snadno a jednoduče číst a zpracovávat souborový formát. Proto je vybrán formát ini-file. Je standardizován a jsou k dispozici parsery (čtou a zpracovávají data v souboru). Např. Modul konfiguračního parseru v Pythonu.

Každá materiálová definice je uložena v souboru s příponou .FCMat. Některé z těchto souborů jsou součástí zdrojáků FreeCADu a jsou zkompilovány do binárního tvaru. Jsou přiloženy k distribuci a přístupné. Ale soubory mohou být umístěny a prohlíženy i na různých místech, aby bylo umožněno přidávání dalších nestandardních materiálových definic.

Příklady
; last modified 1 April 2001 by John Doe Name=Steel_Cast Father=Steel Source=Some material book everyone knows (or not) ;Some comment [EN10027] ; steel standard EN 10027-1 Name=S235JR+AR [Graphic] Color_Emissiv = 255,255,255

Materiálové vlastnosti
Zde je popis dohodnutých materiálových vlastností. Můžete přidat podsekci pro materiálové vlastnosti je-li to obor kde jste experti.

Základní
Dodělat: přidat některé vlastnosti s uspořádacím systémem pro materály (kov, slitina, minerál, dřevo, ....)

Mechanické
Dodělat: přidat další vlastnosti potřebné pro strojařské návrhy.

Grafické
Tento odstavec definuje materiálové vlastnosti, které se vztahují k vizuálnímu zobrazení materiálu.

Metoda konečných prvků (FEM)
Dodělat: Vytvořit kolekci materiálových vlastností FEM.

Computational Fluid Dynamics
ToDos: Build up collection of CFM material properties.

Architktura a BIM
Dodělat: přídat vlastnosti pro životnost & LEED