Hinweise zum Import von: / Hints for importing:
STEP, STL, AutoCAD-DXF, NASTRAN, ABAQUS, ANSYS, COSMOS, Z88

Moderatoren: ccad, mz15, auroraIco, Lehrstuhl

vom HBecker
#2080
Hallo,

Ich habe in Salmoe ein Netz erstellt und möchte dieses nun in z88 importieren. Da z88 jedoch keine der Dateiformate lesen kann die salmoe exportiert habe ich ein exportiertes .unv Format mit hilfe eines Python Skriptes in eine .inp Datei umgewandelt.

Natürlich muss die ausgegebene Datei noch überarbeitet werden, so mussten z.B. alle Oberflächen Elemente entfernt werden, damit es nur noch einen Element typ gibt. Außerdem musste ich noch die aus der einen Beispieldatei genommenen Code Schnipsel
** ASSEMBLY
**
*Assembly, name=Assembly
**
*Instance, name=Rohr
und am Ende
*End Instance
**
*End Assembly
einfügen, sowie die Groß/Kleinschreibung anpassen.
Dann funktionierte zumindest das einlesen des Netzes.

Leider klappt es nicht Punkte oder Elemente zu sets zusammen zu fassen. Es kommt aber auch keien fehlermeldung dass es nicht klappt. die Dateien z88sets.txt und z88setsactive.txt haben einfach nur eine "0" drin stehen.
Ich wermute dass die Formatierung des Befehls nicht ganz richtig ist .
Als Beispiel mal wie es bisher aussieht:
*Nset, NSET=ZVERSCHIEBUNG
308, 324, 2944
*Elset, Elset=HaltenGross,
6229, 6230, 6231, 6232
6233, 6234, 6235, 6236
[...]
Mit der Groß und Kleinschreibung habe ich schon experimentiert und soweit ich das bei online gefundenen ABAQUS Datein gesehen habe sieht die Formatierung in inp Dateien in etwa ähnlich aus.

Was müsste ich ändern um die Sets auch in z88 zu bekommen?

Schon einmal vielen Dank.
vom mifris
#2081
Hallo HBecker,

Sie sollten versuchen eine .inp-Datei zu erstellen, die genauso aussieht, wie in unserem Beispiel (C:\Z88AuroraV2\docu\examples\import\b26). Den Rest erledigt unser eigener Konverter z88inp.exe.
Ein generelles Problem, welches wir auch immer wieder adaptieren müssen, sind die Abaqus-Schlagwörter. Damit dies aber ein wenig einfacher geht, haben wir eine inpenviro.z88-Datei. Wenn Sie diese unter C:\Z88AuroraV2\win\bin mit z.B. Notepad++ öffnen, können Sie diverse Schlagwörter für den z88inp-Konverter anpassen. :)

Ich hoffe, ich konnte Ihnen ein wenig weiter helfen.
Mit freundlichen Grüße,

M. Frisch
vom HBecker
#2082
Hallo,

leider hilft das nicht viel weiter.

Ich habe die Datei aus dem beispiel b26 bereits genommen um die Datei zum laufen zu bekommen (das hat sehr geholfen) Die Struktur bekomme ich ja jetzt importiert.

Die Datei inpenviro habe ich bereist gefunden, und dort sind die Befehle *Nset und *Elset ja bereits drin.
Leider habe ich selbst kein ABAQUS und kann daher nicht schnell ein einfaches Modell erstellen mit ein paar gruppierten Knoten und Elementen. Ich bin auf .inp Dateien angewiesen die ich im internet finde. Die sind dann aber sehr sehr kompliziert oder so einfach dass sie keine gruppen haben. Von den komplizierten Dateien her würde ich aber schliessen dass meine *Nset und *Elset befehle so ausssehen wie sie ABAQUS erstellt werden.

Z88 übernimmt meine Gruppen trotzdem nicht. Solange ich nicht weiß in welcher Form z88 die Befehle erwartet bleibt mir außer planloses rumprobieren und verändern der befehle nicht mehr viel übrig. Und das rumprobieren war bisher nicht von Erfolg gekrönt.

Eigentlich würde mir eine Beispielzeile mit dem Befehl wie Gruppen von z88 importiert werden können voll und ganz ausreichen, doch habe ich sowas bierher nicht gefunden.
Benutzeravatar
vom mz15
#2083
Hallo HBecker,

das Problem ist, das keine Knoten- oder Elementsets uebernommen werden, die nicht expliziet mit einer Randbedingung verknuepft sind. Die Definition des Sets ist schon richtig, Sie muessen jetzt nur noch eine Randbedingung, z.B. eine Festhaltung einfuegen, dann wird das Knotenset verwendet um die Festhaltung zu schreiben.

Gruß
mz
Benutzeravatar
vom mz15
#2084
Hallo HBecker,

Das sieht dann folgendermassen aus:

*Nset, nset=_PickedSet2
1,2,3,4,5,6,7,8,9,10
** BOUNDARY CONDITIONS
*Boundary
_PickedSet2, PINNED

Entscheident ist, das die Namen des Knotensets "_PickedSet2" und der Verweis auf die Randbedingung identsich sind, sonst geht es nicht.
Falls Sie das nicht wollen, erstellen Sie einfach eine fiktive Randbedingung wie hier oben, und entfernen diese dann wieder in Z88Aurora. Dann haben Sie aber das Kontenset behalten und koennen dann damit machen was Sie wollen.

Gruß
mz
Benutzeravatar
vom mz15
#2086
Hallo HBecker,

es freut mich das jetzt alles funktioniert. sie haben oben geschrieben
habe ich ein exportiertes .unv Format mit hilfe eines Python Skriptes in eine .inp Datei umgewandelt.
Wenn Sie eh einen Konverter fuer das Format verwenden, koennen Sie doch auch gleich die Z88-Daten z88structure und z88sets schreiben. Die beiden Formate sind auch sehr ausfuehrlich im Theoriehandbuch beschrieben. Dann brauchen Sie auch keine fiktiven Randbedingungen ond solche Sachen. Nur so als Idee.

Gruß
mz15
vom HBecker
#2087
Die Idee hatte ich auch schon, doch denke ich wird das mehr Aufwand als mit lieb ist, zumal gerade z88sets.txt nicht so gut dokumentiert ist wie ich mir das Wünsche.

Dort steht
2. Eingabegruppe:
Auflistung der Knoten/Elemente des jeweiligen Set
Aber gerade bei Oberflächen (Surface) ist das nicht der Fall, hier ein Ausschnitt aus einer manuell erstellten Oberfläche:
#SURFACE CONSTRAINT 3 3722 "Innenflaeche"
1 3 4 2764 2790 2819
1. Zeile ist klar: Art, Art der RB, FG, Elementanzahl, Name
2. Zeile wiederum ist teilweise rätselhaft:
Flächennummer?,Zahl zwischen 0 und 3 - FG?,Elementnummer, Knoten auf dem Element

Surface im allgemeinen ist kaum Dokumentiert :-/

Leider scheint die Notation wie ABAQUS sie nutzt um Flächen durch Knoten zu definieren nicht zu funktioneren.
Input File Usage:
*SURFACE, NAME=name, TYPE=NODE
node number or node set, area
*Surface, Name=Spressure, Type=Node
43, 224, 225, 226
Benutzeravatar
vom mz15
#2088
Hallo HBecker,

ja das stimmt leider, aber Flaechen brauchen Sie auch nur fuer Druckrandbedingungen. Ansonsten sind Sie schon ganz gut. Folgendes Muster:

1. Zeile : Art, Art der RB, Setnummer, Anzahl der Eintraege, Name
2. Zeile :
Flächennummer,Flaechenindex,Elementnummer, Knoten durch die die Flaeche gebildet wird

Flächennummer: Vom ersten Element an aufsteigend: Bsp. Tetraeder --> 1. Element Flaeche 1-4, 2. Element Flaeche 5-8, ...
Flaechenindex: Tetraeder hat vier Flaechen: 0-3
Hexaeder hat 6 Flaechen: 0-5

Gruß
mz15
vom HBecker
#2089
Guten Morgen,
mz15 hat geschrieben: ja das stimmt leider, aber Flaechen brauchen Sie auch nur fuer Druckrandbedingungen.
praktischer weise genau das worum es mir geht.

Ich möchte verbindung zweier gekreuzter Rohre die von innen unter Druck stehen simulieren.
Die Kontaktfläche und Form der Schweissnaht ist alles andere als trivial, daher wäre es nur sehr sehr schwer alle Knotenpunkte und Elemente selbst zu setzten und das input file selbst zu schreiben. (Vor allem ohne verschiedene lokale KS)

Zum Glück ging es das ganze in Salome zu erstellen, doch was die Drucksimulation angeht arbeiten Salome und z88 völlig unterschiedlich.

Salome erstellt Flächenelemente und belastet diese, während z88 die die Flächen von Volumenelementen belastet. Die Flächenelemente können ja, zumindest durch inp Dateien nicht mal nach z88 importiert werden, da nur ein Elementtyp importiert werden kann.

An die passenden Flächen der Volumenelemente komme ich in Salome aber nicht ran, daher muss ich einen anderen Weg gehen die Fläche hier zu simulieren.

Ich sehe da zurzeit zwei Möglichkeiten.

1. Den Import über die Knoten (siehe meinen letzten Post), leider funktioniert das nicht so wie ich mir das Vorstelle oder wie das in ABAQUS funktionieren sollte. Z88 erstellt die sets nicht, d.h. wenn ich die Fläche mit einer RB belegen möchte sagt z88 dass das set nicht existiert.
Ist der Befehl falsch oder geht es im allgemeinen nicht die Flächen nur durch Knoten zu bestimmen?

2. In Z88 kann man im GUI einzelne Knoten anwählen und dann daraus die passende Fläche wählen. Gibt es so einen befehl auch in einer Art input file oder sonst wie automatisierbar?
Nach der Art: ich wähle ein paar Knoten an und lasse mir alle Flächen wiedergeben auf der sie liegen?

Grüße
HBecker
Benutzeravatar
vom mz15
#2090
Hallo HBecker,
das ist schon mal richtig das Flaechenlasten nicht ueber den ABAQUS-Konverter eingeladen werden koennen. Flaechen koennen nicht nur ueber Flaechen definiert werden. Das Flaechen automatisch selektiert werden ist so auch nicht vorgesehen, daher gibt es dafuer keine Funktion. Sie koennen aber die Flaechen ueber Picking selektieren, wenn Sie die Geometrie eingeladen haben. Das Knotenpicking waehlt auch nur Knoten aus, diese bilden zwar eine „Flaeche“ aber es ist nicht moeglich mit Knoten eine Druckrandbedingung aufzugeben. Selbst wenn Sie die Flaechen einladen koennten ist die Berechnungsmethode, wie Sie schon erkannt haben, sehr verschieden.
Inputdaten oder automatisierbare Befehle sind so bisher gar nicht vorgesehen, evtl. in einer Folgeversion.
Gruss
Mz15
vom HBecker
#2092
Guten Morgen,

das ist schade zu lesen, möchte ich das ganze doch automatisieren.

Nagut, dann werde ich mir einen anderen Weg suchen müssen.

Vielen Dank für die Mühe

Hallo Hanhart94, ich vermute der Fehler liegt bei[…]

Start

Hallo Schlorchi00, leider konnten wir den Fehler[…]

Hallo liebes Z88 Team, gibt es bereits Neuigkeite[…]

UPDATE Nachdem ich es nach weiteren Tests leide[…]