Autor
|
Thema: inhomogene Materialverteilungen (2181 mal gelesen)
|
stephan22 Mitglied Student
Beiträge: 108 Registriert: 17.11.2004
|
erstellt am: 03. Mrz. 2008 15:06 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen ! Ich arbeite im Moment viel mit inhomogenen Materialmodellen, also einem Körper mit verschiedenen Dichtebereichen. Deshalb möchte ich jedem Element anhand einer Exponentialfunktion einen eigenen E-Modulwert zuweisen. In Ansys geht das über die Temperatur in jedem Element. Dann kann ich eine Temperaturabhängige Funktion zur E-Modulberechnung eingeben. Ist sowas auch in Abaqus möglich und wenn ja mit welchen Befehlen? Im Moment arbeite ich mit *SOLID SECTION um ein Material bestimmten Elementen zuzuweisen. Theoretisch könnte ich auch so viele Materialien wie Elemente erzeugen und für jedes Element ein eigenes Material mit *SOLID SECTION zuweisen. Gibt es bei den Materialien eine Obergrenze für die Anzahl? Lieber wäre mir aber eine elegantere Variante über eine Exponentialfunktion. Ist in Abaqus auch die Temperaturzuweisung an Elemente möglich? Vorab vielen Dank. Grüße Stephan 22 ------------------ SR Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 04. Mrz. 2008 20:43 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
In Abaqus kann man natürlich auch die Materialeigenschaften temperaturabhängig machen. In den Keywords kann man aber keine räumliche Verteilung über Formeln angeben. Dafür gibt es die User Subroutines, in denen jeder sich selbst Algorithmen für seine Anwendungen programmieren kann. D.h. du könntest z.B. die Temperatur eines jeden Knoten in einer Subroutine in Abhängigkeit der Lage definieren. Ansonsten kann man in den Keywords natürlich für Knoten/Knotensets Temperaturen direkt zuweisen. Entweder auf die Art und Weise wie du es jetzt machst oder über die Keywords *Distribution und *Distribution Table. Alternativ kann auch eine Liste aus anderen ASCII-Dateien dazulesen. Die Temperaturdefinition in Abaqus ist immer knotenbasierend. Für temperaturabhängige Elementberechnungen wird dann abhängig von der Ansatzfunktion eine Temperatur für jeden Integrationspunkt berechnet. In CAE gibt es momentan schon (und wird es auch angeblich in Zukunft verstärkt) die Möglichkeit geben Definitionen (Lasten, Randbedingungen, Schalendicken, usw) über math. Formeln räumlich zu verteilen. Das Stichwort ist hier "Analytical Field". CAE wird dann im Hintergrund für jedes Element/Knoten/Fläche automatisch einen Wert ausrechnen und in die .inp schreiben. Vielleicht gibt es diese Funktion mit v6.8 auch für Materialdaten... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Poldi1979 Mitglied
Beiträge: 51 Registriert: 22.07.2007
|
erstellt am: 06. Mrz. 2008 09:17 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Hallo. Ich habe ein ähnliches Problem wie Stephan22. Mich würde dabei auch sehr interessieren, wieviele Sections bzw. Materialmodelle man in einer Rechnung realisieren kann? Sind es eher 1000 oder 10000 bzw. mehr oder weniger? Treten dann Probleme beim Preprozessor oder auch in der späteren Rechnung auf? Viele Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 06. Mrz. 2008 11:01 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Eigentlich kann man beliebig viele Sections definieren. Es wird dann nur mehr Zeit im Abaqus-Preprocessing und Solver benötigt. Aber genau aus diesem Grund gibt es die Methode eine Verteilung über *Distribution und *Distribution Table zu definieren. siehe Users Manual 2.7.1 Distribution definition Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Poldi1979 Mitglied
Beiträge: 51 Registriert: 22.07.2007
|
erstellt am: 06. Mrz. 2008 13:10 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Die Alternative *Distribution hatte ich auch bereits in Betracht gezogen. Leider ließ sich dieser Weg nicht mit Shell-Elementen, *nodal thickness und einem orthotropen Materialmodell zusammen verwenden. Wenn es dennoch möglich sein sollte, bin ich für jeden Hinweis dankbar. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 06. Mrz. 2008 17:43 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Soweit ich das sehe sollte das gehen. Schaue dir mal auf dieser Seite im Users Manual weiter unten das Example 1 an. Dort wird mit *Distribution und *Distribution Table eine variierende Schalendicke definiert. In diesem Beispiel direkt für die Elemente. Wenn du aber bei dem Parameter "Location" der Wert "Nodes" einträgst, solltest du die Schalendicke genauso knotenbasierend definieren können. Weiter unten siehst du dann im Example 3 wie man mehrere Verteilungen gleichzeitig verwendet um wie in dem Beispiel die variierende Dicke und ein variierendes lokales Koordinatensystem pro Element zu definieren. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Poldi1979 Mitglied
Beiträge: 51 Registriert: 22.07.2007
|
erstellt am: 07. Mrz. 2008 10:30 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Hallo Mustaine, ich habe mir nochmal den Befehl *distribution angeschaut. Kurz zu meiner Problemstellung. Ich möchte ein linear-elastisches, orthotropes Materialmodell für Shell-Elemente verwenden, wobei jedes Element eigene E-Module und auch Wanddicken besitzt. Hier ein Auszug aus meinem Input-File: *nodal thickness, input=thickness.nth ** *DISTRIBUTION TABLE, NAME=tab1 MODULUS, MODULUS, RATIO, MODULUS, MODULUS, MODULUS ** *DISTRIBUTION, NAME=dist1, LOCATION=element, TABLE=tab1 , 2000, 2100, 0.4, 800, 800, 800 1 , 2158 , 2198 , 0.38 , 782 , 782 , 782 2 , 2176 , 2154 , 0.38 , 788 , 788 , 788 ** *SHELL SECTION, ELSET=EFlasche, NODAL THICKNESS, Material=Mat1 0.0003, 5 *MATERIAL, Name=Mat1 ** *ELASTIC, type=lamina dist1 Folgende Fehlermeldung erhalte ich allerdings: ***ERROR: THE MATERIAL PET WAS DEFINED WITH DISTRIBUTIONS AND CANNOT BE USED FOR SHELL ELEMENTS. Leider kann ich in der Dokumentation keinen Hinweis finden, wieso dieses nicht so funktioniert. Kann mir vielleicht jemand weiterhelfen? Viele Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 07. Mrz. 2008 12:15 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Hi ich habe er gerade selbst mal probiert und bekomme folgende Fehlermeldung: ***ERROR: THE MATERIAL STEEL WAS DEFINED WITH DISTRIBUTIONS AND CANNOT BE USED FOR SHELL ELEMENTS. Das bedeutet wohl dass die Definition von variierende Materialeigenschaften über *Distribution bei Schalen nicht möglich ist. Damit du nicht für jedes Element ein Material und eine Shell Section definieren musst, würde ich folgendes vorschlagen: Mach dein Material temeraturabhängig und weise über *Initial Condition jedem Knoten eine Temperatur zu. Somit kannst du die Eigenschaften auch räumlich ändern. Eine Liste mit Knoten hast du ja schon. Ein besserer Weg fällt mir momentan nicht ein... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Poldi1979 Mitglied
Beiträge: 51 Registriert: 22.07.2007
|
erstellt am: 07. Mrz. 2008 12:59 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Das mit der Temperaturverteilung wäre sicher eine gute Möglichkeit bei einem isotropen Materialverhalten. Ich denke, dass ich den Weg über eine UMAT gehen muss oder einfach für jedes Element eine eigene Shell-Section bzw. Material. Aber ich bin mir nicht sicher, ob das bei 20.000 Elementen noch sinn macht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 14. Mrz. 2008 16:53 <-- editieren / zitieren --> Unities abgeben: Nur für stephan22
Eine noch nicht erwähnt Möglichkeit wäre noch die Aufgabe über ein Script zu erledigen, welches mit der .inp arbeitet. Man könnte also recht leicht ein Script schreiben dass erkennt wieviele Elemente in der inp stehen. Über die Knoten kann man denn recht leicht den Mittelpunkt für jedes Element ausrechnen. Basierend auf den Koordinaten des Mittelpunktes könnte dann über eine math. Formel und Regeln das Materialverhalten generiert werden. Das Material und die Section lässt man dann am besten in eine extra Datei schreiben und liest diese mit *Include dazu. Natürlich entstehen hier viele Sections. Aber wenn man damit leben kann dass der Datacheck und die Analyse etwas länger dauert dann wäre das eine Möglichkeit. Alternativ könnte man etwas ähnliches auch mit den Knotentemperaturen und temperaturabhängigem Material machen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |