Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  durchschnittliche Elementgröße

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   durchschnittliche Elementgröße (322 mal gelesen)
GeorgBaum13
Mitglied


Sehen Sie sich das Profil von GeorgBaum13 an!   Senden Sie eine Private Message an GeorgBaum13  Schreiben Sie einen Gästebucheintrag für GeorgBaum13

Beiträge: 3
Registriert: 04.10.2018

erstellt am: 15. Okt. 2018 15:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

kann mir jemand sagen, wie ich die durchschnittliche Elementgröße meines Körpers ermitteln kann in Abaqus? Mit dem Tool Verify Mesh bekomme ich leider nur die durchschnittliche max. oder min. Elementkantenlänge. Aber ich hätte gerne entweder die durchschnittliche Elementkantenlänge ohne min. oder max. oder die durchschnittliche Fläche (ich simuliere in 2d) meiner Elemente.

Wäre für Hilfe sehr dankbar.

Gruß Georg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Mustaine
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von Mustaine an!   Senden Sie eine Private Message an Mustaine  Schreiben Sie einen Gästebucheintrag für Mustaine

Beiträge: 3261
Registriert: 04.08.2005

Abaqus

erstellt am: 16. Okt. 2018 09:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GeorgBaum13 10 Unities + Antwort hilfreich

Starte die Rechnung und warte bis das erste Inkrement begonnen hat, dann kannst du sie wieder abbrechen. In der .msg findest du dann vor den Infos zum ersten Inkrement eine Zeile "CHARACTERISTIC ELEMENT LENGTH ...".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

e.kostson
Mitglied
Technical Manager


Sehen Sie sich das Profil von e.kostson an!   Senden Sie eine Private Message an e.kostson  Schreiben Sie einen Gästebucheintrag für e.kostson

Beiträge: 20
Registriert: 07.08.2018

erstellt am: 17. Okt. 2018 10:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für GeorgBaum13 10 Unities + Antwort hilfreich

Ich bin mir nicht sicher, ob Sie das, was Sie benötigen, aus dem Werkzeug verify / mesh / tool, das Informationen zur Elementqualität liefert (Seitenverhältnisse, Internal Element Angles, usw.).

Ich bin mir auch nicht sicher, was diese charakte- ristische Länge berechnet, da ich kein abaqus-Entwickler bin und da ich nicht weiß, ob es dokumentiert ist, wie die Berechnung durchgeführt wird.

Was wir wissen ist, dass wir Skripte verwenden können, um Strings zu bekommen, die FEA-Software uns nicht zur Verfügung stellt, was wirklich gut ist. Im Folgenden sehen Sie ein kleines Beispielskript, in dem die einzelnen Elementbereiche, das Gesamt- und das Durchschnittselement, für ein 2D-Netz (XY-Ebene) berechnet werden. Das einzige, was eingestellt werden muss, ist der Name der ODB-Datei an der Spitze, und der Skalierungsfaktor (0 wenn unverschmutztes Netz verwendet wird, und> 0 oder <0, wenn ein verformtes Netz verwendet wird).

Hoffe das hilft. Man könnte natürlich auch andere Berechnungen anstellen, z. B. die durchschnittliche Seitenlänge von Elementen finden und andere Dinge ansprechen, so dass es sich nur um einen Beispielcode handelt, natürlich ohne Garantie.


Code:

from abaqus import *
from abaqusConstants import *
# create odb object from odb file
outputDatabase = session.openOdb(name= 'PlateArea'+'.odb')

# get access to the nodal displacement data
frame = outputDatabase.steps[ 'Step-1' ].frames[-1]

dispField = frame.fieldOutputs['U']

# get access to the part instance -- thru which u can access the undeformed nodal position coordinates
my_part_instance = outputDatabase.rootAssembly.instances['PART-1-1']

# Write individual element areas, total areas and average element area

outFile = open( 'deformed_shape.txt' , 'w' )

# write inp header
scalefactor= 0
x=[]
y=[]
TotA=0
# get node positions

numNodesTotal = len( my_part_instance.nodes )

for i in range( numNodesTotal ):

curNode = my_part_instance.nodes[i]

defNodePos = curNode.coordinates + scalefactor*dispField.values[i].data
x.append(defNodePos[0])
y.append(defNodePos[1])

# calculate shell element areas

numElementsTotal = len( my_part_instance.elements )


for i in range( numElementsTotal ):

curElement = list( [i+1] + list( my_part_instance.elements[i].connectivity ) )
numbernodes=len(curElement)
if numbernodes-1==3 or numbernodes-1==6:
A=0.500*abs(x[curElement[1]-1]*y[curElement[2]-1]+x[curElement[2]-1]*y[curElement[3]-1]+x[curElement[3]-1]*y[curElement[1]-1]-x[curElement[2]-1]*y[curElement[1]-1]-x[curElement[3]-1]*y[curElement[2]-1]-x[curElement[1]-1]*y[curElement[3]-1])
TotA = TotA + A
#x[curElement[1]-1]
outFile.write( str( curElement[0] ) +',' + ' ' + 'Area='+ str(A) + '\n' )
else:
A=0.500*abs(x[curElement[1]-1]*y[curElement[2]-1]+x[curElement[2]-1]*y[curElement[3]-1]+x[curElement[3]-1]*y[curElement[4]-1]+x[curElement[4]-1]*y[curElement[1]-1]-x[curElement[2]-1]*y[curElement[1]-1]-x[curElement[3]-1]*y[curElement[2]-1]-x[curElement[4]-1]*y[curElement[3]-1]-x[curElement[1]-1]*y[curElement[4]-1])
#x[curElement[1]-1]
TotA = TotA + A
outFile.write( str( curElement[0] ) +',' + ' ' + 'Area='+ str(A) + '\n' )

outFile.write( 'Total Area='+ str(TotA) + '\n' )
outFile.write( 'Average Element Area='+ str(TotA/numElementsTotal) + '\n' )
outFile.close()

outputDatabase.close()


------------------
EPK

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2018 CAD.de | Impressum | Datenschutz