| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. | | |  | KISTERS 3DViewStation: Schutz sensibler 3D CAD Daten, egal von wo Sie arbeiten, eine Pressemitteilung
|
Autor
|
Thema: Macro mit Bezug auf das aktuelle Modell (437 mal gelesen)
|
moonwalker Mitglied Tragwerksplaner

 Beiträge: 60 Registriert: 09.07.2007 abaqus 6.73
|
erstellt am: 26. Mrz. 2008 09:52 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen, ich habe Makros zur Erstellung von Material-properties geschrieben. Leider beziehen sich die Makros immer auf das Modell in dem das Makro erstellt wurde. Wie kann ich auf das aktive Modell zugreifen? Danke schon mal vorab!
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: 26. Mrz. 2008 10:47 <-- editieren / zitieren --> Unities abgeben:          Nur für moonwalker
|
moonwalker Mitglied Tragwerksplaner

 Beiträge: 60 Registriert: 09.07.2007 abaqus 6.73
|
erstellt am: 26. Mrz. 2008 13:12 <-- editieren / zitieren --> Unities abgeben:         
Hallo Mustaine, vielen Dank schon mal. Leider bin noch absoluter Script Neuling. Leider habe ich trotz langer Suche den Fehler nicht gefunden. Ich habe das Script mal eingefügt. from abaqus import * from abaqusConstants import * import regionToolset import material # strmodelName = session.sessionState[session.currentViewportName]['modelName'] mdb.models['strmodelName'].Material(name='C30_37_Verf_smeared', description='Mittelwerte_fuer_Verformung') mdb.models['strmodelName'].materials['C30_37_Verf_smeared'].Density(table=(( 2.4e-09, ), )) mdb.models['strmodelName'].materials['C30_37_Verf_smeared'].Elastic(table=((31900.0, 0.18), )) mdb.models['strmodelName'].materials['C30_37_Verf_smeared'].Concrete(table=(( 12.7492, 0.0), (23.0188, 0.0004375), (30.7071, 0.000875), (35.7062, 0.0013125), (37.9027, 0.00175), (37.1762, 0.0021875), (33.3996, 0.002625), (26.4383, 0.0030625))) mdb.models['strmodelName'].materials['C30_37_Verf_smeared'].concrete.FailureRatios( table=((1.16, 0.076, 0.0, 0.0), )) mdb.models['strmodelName'].materials['C30_37_Verf_smeared'].concrete.TensionStiffening( type=DISPLACEMENT, table=((0.185, ), )) # print '\n==================' print 'Model: '+strmodelName print '------------------' # Bin für jeden Tipp dankbar! Gruß Marc 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: 26. Mrz. 2008 13:58 <-- editieren / zitieren --> Unities abgeben:          Nur für moonwalker
Dein Modelname ist schon ein String. Du darfst ihn dann bei sowas mdb.models['strmodelName'] nicht nochmal in Hochkommata setzen. Ansonsten kannst du die immer wiederkehrenden Teile der Objektkette in Variablen legen und damit arbeiten. Das macht es etwas übersichtlicher. Hier ein Beispiel: Code:
from abaqus import * from abaqusConstants import * import regionToolset import material # strmodelName = session.sessionState[session.currentViewportName]['modelName']a = mdb.models[strmodelName] a.Material(name='C30_37_Verf_smeared',description='Mittelwerte_fuer_Verformung') b = a.materials['C30_37_Verf_smeared'] b.Density(table=((2.4e-09, ), )) b.Elastic(table=((31900.0,0.18), )) b.Concrete(table=(( 12.7492, 0.0), (23.0188, 0.0004375), (30.7071, 0.000875), (35.7062, 0.0013125), (37.9027, 0.00175), (37.1762, 0.0021875), (33.3996, 0.002625), (26.4383, 0.0030625))) b.concrete.FailureRatios(table=((1.16, 0.076, 0.0, 0.0), )) b.concrete.TensionStiffening(type=DISPLACEMENT, table=((0.185, ), )) # print '\n==================' print 'Model: '+strmodelName print '------------------'
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
moonwalker Mitglied Tragwerksplaner

 Beiträge: 60 Registriert: 09.07.2007 abaqus 6.73
|
erstellt am: 26. Mrz. 2008 14:30 <-- editieren / zitieren --> Unities abgeben:         
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |