ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.

Calculix

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

calculix.pngCalculiX ist ein frei verfügbares Finite Elemente Programm zur Simulation von Strukturmechanik. FE-Berechnungen werden unter anderem im Ingenieurswesen eingesetzt, um partielle Differentialgleichungen auf komplexen Geometrien numerisch zu lösen (z.B. eine Karosserie im Automobilbereich). CalculiX teilt sich hierbei in den Solver ccx und den Pre- und Postprocessor cgx auf. Mit einem Preprocessor werden Geometrien aus CAD-Programmen eingelesen und durch Vernetzen in ein mathematisches Modell umgewandelt. Diese werden dann mit dem Solver gelöst und anschließend wieder mit dem Postprocessor analysiert. CalculiX verwendet zu großen Teilen das proprietäre Abaqus-Eingabeformat. Daher lassen sich zahlreiche Prä- und Postprozessoren nutzen. Die Berechnungen stehen jedoch in keiner Verbindung zu Abaqus.

Installation

Wie Eingangs erwähnt, teilt sich CalculiX in zwei "Unterprogramme" auf. In der Pre- und Postprocessor cgx sowie den Solver ccx.

Paketinstallation

Von Calculix werden DEB-Pakete {dl} angeboten. Die Pakete können für Lucid Lynx 10.04 heruntergeladen werden. Nachdem man sie für die korrekte Ubuntuversion und Architektur geladen hat, müssen DEB-Pakete noch installiert werden.

Hinweis!

Fremdpakete können das System gefährden.

Paketquelle manuell hinzufügen

Adresszeile zum Hinzufügen des PPAs:

  • ppa:cae-team/ppa

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen bietet die Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung vom Benutzer/Team cae-team.

Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.

Anschließend kann man den Solver ccx sowie den Pre/Postprocessor cgx über die Pakete

  • calculix-ccx (ppa)

  • calculix-cgx (ppa)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install calculix-ccx calculix-cgx 

sudo aptitude install calculix-ccx calculix-cgx 

installieren [4].

Benutzung

Pre/Postprocessor cgx

Um mit cgx eine neue Eingabe Datei erzeugen zu können, muss cgx im Build-Modus durch Eingabe folgenden Befehls im Terminal[1] gestartet werden.

cgx -b test.fbd 

Dabei öffnet sich ein neues Fenster.

Hinweis:

Dieses Fenster sollte sich immer im Vordergrund befinden, da von cgx die Befehle sonst nicht akzeptiert werden.

Um mit der Eingabe von Punkten zu beginnen, eignet sich der Befehl pnt.

pnt p1 0 0 0
pnt p2 100 0 0 

Hierbei handelt es sich um den Punkt p1 mit den x,y und z Koordinaten gleich 0, sowie p2 (100|0|0). Meist ist jetzt noch nichts zu sehen. Um den Plot auf den Bildschirmbereich einzupassen, klickt man in das linke freie Feld linke Maustaste des Fensters und wählt "Frame". Jetzt sollte ein Punkt in der Mitte des Anzeigefensters zu sehen sein. Mit dem Befehl

plot pa all 

zeigt cgx zusätzlich die Punktnummern an. Mit dem Befehl

qlin 

lässt sich eine Linie zwischen beiden Punkten erzeugen. Dazu fährt man mit dem Mauszeiger in das Plotfeld und drückt R ; nachdem man die Maus ein klein wenig bewegt hat, drückt man erneut R . Nun sollte statt des Mauszeigers ein Rechteck erscheinen. Dessen Größe lässt sich beliebig durch Drücken von R ändern. Um nun eine Linie erzeugen zu können, muss sich der p1 innerhalb des Rechtecks befinden. Durch Drücken der B Taste legt man den Anfang der Linie fest. Jetzt fährt man mit dem Mauszeiger zu Punkt p2 und drückt G für generate. Um die Eingabe zu beenden ist ein Q vonnöten. Nach Eingabe von

plus la all

sollte die Linie L001 erscheinen. Die Linie lässt sich zu einem Rechteck erweitern, welches man vernetzen kann. Dazu muss man die Linie zu einem Set hinzufügen.

qadd set1 

Wieder kann man hier mit der R -Taste ein Rechteck erzeugen. Um die Linie hinzufügen zu können, muss sich der Name der Linie im Rechteck befinden. Durch Drücken von L wird die Linie dem set1 hinzugefügt. Die Eingabe wird wieder mit Q beendet. Jetzt kann die Linie zu einem Rechteck erweitert werden

swep set1 set2 tra 0 0 50 

Durch

plus sa all 

wird die Fläche A001 sichtbar. Diese lässt sich jetzt vernetzen. Als Element {en} wird 8-knotiges Plattenelement (qu8) verwendet.

elty all qu8
mesh all
plot m all 

Nun färbt sich der Quader grau. Um das Netz sehen zu können, klickt linke Maustaste man in das linke freie Feld und wählt "viewing -> lines". Nun sollte das vernetzte Rechteck sichtbar sein.

Nun wird ein Punkteset erzeugt, welches später die Einspannung sein soll.

plot na all
qadd boundary 

Durch Drücken von A lassen sich mehrere Punkte dem Set hinzufügen. Um die richtige Seite sehen zu können wählt man "orientation -> -y-view". Mit R erzeugt man wieder ein Rechteck, in welches alle unteren Punkte passen und drückt "n" für Nodes. Verlassen wird der Befehl wieder mit Q

plus n boundary y 

Nun kann das Netz abgespeichert werden und die Eingabedatei für den Solver erstellt werden.

send all abq #Erstellt die Knoten- und Elementdatei im Arbeitsverzeichnis
send boundary abq nam #Erstellt die Knotendatei für die Einspannung 

Nun kann cgx beendet werden.

Solver ccx

Anschließend wird im selben Verzeichnis mit den all.msh und boundary.nam Dateien eine Datei Balken.inp mit einem geeigneten Editor[3] erstellt.

**Einbinden der Netz- und Lagerdateien
*include, input=all.msh
*include, input=boundary.nam

**Festlegung des Materials
*MATERIAL, NAME=Al 
*ELASTIC
70000,0.3

**Beschreibung der Plattenelemente und Festlegung der Dicke
*SHELL SECTION, MATERIAL=Al, ELSET=Eall
1

**Freiheitsgrade der Einspannung
*BOUNDARY
Nboundary,1,6

*STEP
*STATIC
**Lastaufbringung
*CLOAD
4,	3,	-1000
*NODE PRINT,NSET=Nall
U
*EL PRINT,ELSET=Eall
S
E
*NODE FILE, output=3D
u
rf
*EL FILE
S, E
*END STEP

Diese erstellte Datei wird im Terminal mit ccx aufgerufen, allerdings ohne die Dateiendung, da ccx sonst die Datei nicht findet.

mises.png

ccx Balken  

Nach einer kurzen Berechnungszeit ist im Arbeitsverzeichnis eine Datei Balken.frd entstanden.

cgx Balken.frd  

Durch Auswahl von "Datasets -> Stress und erneut Datasets -> -Entity- -> Mises" wird die von Mises Vergleichsspannung dargestellt.

Geometrien aus externen Vernetzern

Da das Zeichnen der Geometrien in CalculiX eher umständlich ist, ist es sinnvoller, die Zeichnungen mit einem externen Programm zu erzeugen (z.B. ProE) und diese dann in CalculiX einzulesen. CalculiX versteht hierbei leider nur das Format .stl, welches aber einen Kompromiss darstellt, da die Geometrien mithilfe von Dreiecken beschrieben werden und somit Rundungen nicht dargestellt werden. Besser ist hier, auf einen externen Vernetzer zurückzugreifen wie gmsh {en} oder netgen {en}.

Wiki

  • Abaqus - Wiki-Artikel zu Abaqus

Extern

ubuntuusers.local › WikiCalculix