Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  findAt( Koordinate als Variable)

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:  findAt( Koordinate als Variable) (1199 mal gelesen)
Andyyy
Mitglied



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

Beiträge: 51
Registriert: 03.12.2009

erstellt am: 28. Jan. 2010 15:45    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,

kann man in der Funktion findAt() anstatt numerische Koordinaten auch Variablen einsetzten? Wenn ja, wie mache ich das? Es mag bei mir nicht funktionieren.

Danke

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

Andyyy
Mitglied



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

Beiträge: 51
Registriert: 03.12.2009

erstellt am: 28. Jan. 2010 16:10    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

und wie finde ich eine fläche? wie muss ich für eine fläche die koordinaten angeben? bitte gebt mir mal ein beispiel.
vielen dank

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 28. Jan. 2010 17:37    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 Andyyy 10 Unities + Antwort hilfreich

Anbei ein Beispiel. Den Code als Script über File->Run Script.. in einem leeren CAE aufrufen.

Du musst einen Punkt auf der Fläche angeben. Ansonsten kannst du auch getClosest() verwenden.


Code:

from abaqus import *
from abaqusConstants import *
from caeModules import *


s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
    sheetSize=200.0)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=STANDALONE)
s1.rectangle(point1=(-5.0, 5.0), point2=(5.0, -5.0))
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D,
    type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseSolidExtrude(sketch=s1, depth=20.0)
s1.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']

a=mdb.models['Model-1'].parts['Part-1'].faces
x=a.findAt((0,0,0),)

print x


Das Index=5 heißt also dass deine Fläche diese ist:
mdb.models['Model-1'].parts['Part-1'].faces[5]

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

Andyyy
Mitglied



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

Beiträge: 51
Registriert: 03.12.2009

erstellt am: 28. Jan. 2010 17:44    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 Mustaine,

danke für deine Antwort. Hat nun funktioniert.
Ich bräuchte aber noch eine Sache, im skript wohl einfach übersprungen wird und zwar: anstelle von

x=a.findAt((0,0,0),)


würde ich gerne schreiben

zzz=5
x=a.findAt((0,0,zzz),)


aber das wird nicht erkannt. Wie kann ich das machen. Ich brauche genau da eine Variable.

Gruß

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 28. Jan. 2010 18:33    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 Andyyy 10 Unities + Antwort hilfreich

In meinem Beispiel ist halt keine Fläche bei 0,0,5.


Das müsste gehen:

zzz=0
x=a.findAt((0,0,zzz),)

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)2023 CAD.de | Impressum | Datenschutz