2016-04-05 29 views
1

Gibt es eine Möglichkeit, die Oberfläche eines generierten Modells mit abaqus zu messen/zu berechnen?Abaqus-Skript messen/Oberfläche berechnen

Ich bin vertraut mit Tools -> Abfrage ... -> Masseneigenschaften in abaqus CAE oder die Skriptversion:

from abaqus import * 
prop=mdb.models['Model'].rootAssembly.getMassProperties() 

Allerdings kann ich nicht einen gleichen Befehl für Oberflächenbereich.

Schätzen Sie die Hilfe!

+0

Ich habe ein Plugin dafür geschrieben. Lass es mich wissen, wenn du es willst und ich werde die Dateien auf meinem Google Drive hosten. – DougR

Antwort

2

Die Funktion getArea() gibt die Fläche einer Gruppe von Flächen zurück.

Zum Beispiel:

a = mdb.models['Model-1'].rootAssembly 
a.getArea(a.instances['Part-1-1'].faces) 

Dies gilt auch für die Lautstärke mit dem Befehl arbeitet getVolume()

a.getVolume() 

und es funktioniert für Teile davon als solche:

p = mdb.models['Model-1'].parts['Part-1'] 
p.getArea(p.faces) 
p.getVolume() 

Ich empfehle sehr zu verwenden die Abaqus Scripting Reference Guide, die hier gefunden werden kann:

Abaqus Scripting Reference Guide

Edit: Diese Methode aswell Innenflächen zählt, wenn Sie den Teil partitionieren. In diesem Fall müssten Sie die Flächen auf der Oberfläche beispielsweise mit der Funktion findAt() selbst auswählen.

+1

Ich denke, wenn die Instanz partitioniert ist, könnte dies die internen Flächen zählen. Es tut uns leid, dass Sie vage sind, aber Sie möchten das vielleicht bestätigen. – agentp

+0

Sie haben Recht. Ich habe überprüft und es zählen auch die internen Flächen, wenn Sie das Teil partitionieren. – Engensmax