vielen Dank für die schnelle Antwort. Es scheint aber nicht zu funktionieren. Es werden in der inneren Schleife immer noch alle 8 Knoten des Elements angesprochen...
ich hab hier mal meinen code:
/prep7
csys,12 ! Hier Nummer des Koordinatensystems eingeben
cmsel,s,KW_Druck,node ! Hier Name der Komponente eingeben
! Minimale / maximale X-Werte herausfinden
*get,xmax,node,0,mxloc,x
*get,xmin,node,0,mnloc,x
xlaenge=xmax-xmin
esln
*dim,druck,array,4,1
*get,anzahl,elem,0,count ! "anzahl" = Anzahl der Oberflächenelemente (= Schleifenlänge)
*get,aktuell,elem,0,num,min ! "aktuell" = hier: Element mit niedrigster Elementnummer (= erstes Element in Schleife)
*do,i,1,anzahl
esel,s,,,aktuell
nsle,s
cmsel,r,KW_Druck
! Vorbereitung der Knotenschleife
*get,anzahl2,node,0,count
*get,aktuell2,node,0,num,min
! Schleife über alle Knoten des Elements
*do,j,1,anzahl2
*get,wert1,node,aktuell2,loc,x
*get,wert2,node,aktuell2,loc,y
*get,wert3,node,aktuell2,loc,z
*if,wert1,gt,0,and,wert1,le,18,then
dr = -200/xmax*wert1 + 200 !200MPa
*elseif,wert1,le,0,and,wert1,ge,-72,then
dr = -200/xmin*wert1 + 200
*endif
druck(j,1)=dr
aktuell2=ndnext(aktuell2)
*enddo
! Setzen der Randbedingung
*if,anzahl2,eq,3,then
sfe,aktuell,1,PRES,druck(1,1),druck(2,1),druck(3,1)
*elseif,anzahl2,eq,4,then
sfe,aktuell,1,PRES,druck(1,1),druck(2,1),druck(3,1),druck(4,1)
*else
*msg,error,aktuell,anzahl2
Element %G hat %G Knoten ! So nicht vorgesehen!!!!
*endif
! Nächsthöhere Elementnummer selektieren
aktuell=elnext(aktuell)
*enddo
allsel
/solu
kann mir jemand weiterhelfen? Ich wüsste nicht, wo der Fehler ist.
Gruß,
Philipp
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP