| | | KISTERS 3DViewStation optimiert die Lizenzverwaltung für ihre Kunden, eine Pressemitteilung
|
Autor
|
Thema: Verformungen über einen Schnitt in eine Textdatei schreiben (796 / mal gelesen)
|
LeBaoer Mitglied
Beiträge: 2 Registriert: 09.05.2016 Abaqus/CAE 6.12-3
|
erstellt am: 09. Mai. 2016 14:56 <-- editieren / zitieren --> Unities abgeben:
Hallo liebe Gemeinde, ich bin ein ziemlicher Neuling, was Abaqus betrifft. Im Moment versuche ich, mit Hilfe eines Python Skripts die Verformungswerte über mehrere Knoten aus einer Simulation in tabellarischer Form in eine Textdatei zu schreiben. Ich habe bereits versucht, in der Dokumentation und in Google nach einer Lösung zu finden, war aber bis jetzt erfolglos. Welche Python-Methoden sind denn allgemein notwendig, um Output-Daten in eine Textdatei zu schreiben? Wie erhält man die Verformungswerte über den Ort, also auf einer Linie auf der Oberfläche eines Bauteils. Vielen Dank für die Hilfe schonmal. Grüße Bao Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
macmallow Mitglied Berechnung
Beiträge: 15 Registriert: 20.04.2015 ABQ 6.13-2 MSVC2012 INTEL PARALLEL XE 2013
|
erstellt am: 09. Mai. 2016 19:25 <-- editieren / zitieren --> Unities abgeben: Nur für LeBaoer
Hallo, Hier ist ein Codeschnipsel, welches ich dazu verwendet habe um die Verschiebung eines Punktes über ein Nodeset auszulesen. Adaptierung auf mehrere Punkte ist sicher leicht möglich. Ist aber schon länger her, dass ich es verwendet habe und ich habe es jetzt auf die Schnelle nicht getestet: Code: from odbAccess import * import sysif len(sys.argv) < 5: print("usage: abaqus python requestResultOverTimeExtraction.py odbName idxStepStart idxStepEnd setNameOfPointOfInterest requestVariable outputFileName") exit() odb = openOdb(path=sys.argv[1]) idxStepStart = int(sys.argv[2]) idxStepEnd = int(sys.argv[3]) nSetname = sys.argv[4].upper() requestVariable = sys.argv[5] exportFileName = sys.argv[6]
nSet = odb.rootAssembly.nodeSets[nSetname] nList = nSet.nodes[0] with open(exportFileName, 'w+') as f: for key, step in odb.steps.items()[idxStepStart:idxStepEnd or None]: for frame in step.frames: nSetFieldOutput = frame.fieldOutputs[requestVariable].getSubset(region = nSet) valuesOfSet = nSetFieldOutput.values dataOfNode = valuesOfSet[0].data formattedString = "{0:<25}".format(step.totalTime + frame.frameValue) for dimension in dataOfNode: formattedString += (" {0:<25}".format(dimension)) formattedString += "# "+key + "\n" #print (formattedString) f.write(formattedString)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3585 Registriert: 04.08.2005 Abaqus
|
erstellt am: 10. Mai. 2016 09:57 <-- editieren / zitieren --> Unities abgeben: Nur für LeBaoer
Zitat: Original erstellt von LeBaoer: Hallo liebe Gemeinde,ich bin ein ziemlicher Neuling, was Abaqus betrifft. Im Moment versuche ich, mit Hilfe eines Python Skripts die Verformungswerte über mehrere Knoten aus einer Simulation in tabellarischer Form in eine Textdatei zu schreiben. Ich habe bereits versucht, in der Dokumentation und in Google nach einer Lösung zu finden, war aber bis jetzt erfolglos. Welche Python-Methoden sind denn allgemein notwendig, um Output-Daten in eine Textdatei zu schreiben? Wie erhält man die Verformungswerte über den Ort, also auf einer Linie auf der Oberfläche eines Bauteils. Vielen Dank für die Hilfe schonmal. Grüße Bao
Path-Plot danach ggf. Report -> XY Siehe CAE Manual 48. Viewing results along a path
Ansonsten einfach die gewünschten Knoten eingeblendet lassen (Rest ausblenden) und dann Report -> Field Output. Siehe CAE Manual 54. Generating tabular data reports
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|