Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  Mappen mit APDL

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys
Autor Thema:  Mappen mit APDL (2305 mal gelesen)
DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 11. Nov. 2013 09:56    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 allerseits,

ich habe nun übers Wochenende mich dran versucht einen Code zu schreiben. Kennt sich jemand aus? Wo ist mein Fehler?

Ich hole zuerst die Knotenpunkte sowie aktuellen Fließgrenzen aus der aktuellen Simulation (fließgrenzen=0, Material jungfräulich) ndata

Danach lade ich dei Koordianten der anderen Fließgrenzen sowie die FLießgrenzenwerte (8279) in einen neuen Array. flgr
die Werte sind dabei in einer CSV datei (x;y;z;fliessgrenze) eingetragen


Danach mappe ich die Fließgrenzenwerte auf die Knotenpunkte von flgr auf ndata.

*get,mpmax,mat,0,num,max                        !Knotenanzahl

                                                        !Knotenpunkte

*dim,nadata,array,mpmax,4                                !Def. von Array ndata

*vget,nadata(1,1),node,0,loc,x                 !laden der x koordinaten
*vget,nadata(1,2),node,0,loc,y                  !laden der y koordinaten
*vget,nadata(1,3),node,0,loc,z                  !laden der z koordinaten
*vget,nadata(1,4),node,0,stress                  !laden der Fließgrenzenwerte

                                                !Fließgrenzen

*dim,flgr,array,8779,4                          !Def. von Array flgr

*vread,flgr(1,0)=1,fliessgrenze,csv,0,1,8279    !laden der x koordinaten aus Datei
*vread,flgr(1,1)=1,fliessgrenze,csv,0,2,8279    !laden der y koordinaten aus Datei
*vread,flgr(1,2)=1,fliessgrenze,csv,0,3,8279    !laden der z koordinaten aus Datei
*vread,flgr(1,3)=1,fliessgrenze,csv,0,4,8279    !laden der Fließgrenzwerte aus Datei


*moper,nadata(1,4),map,flgr,3                  !mappen der Daten von flgr auf ndata

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 11. Nov. 2013 14:27    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

so ists glaub richtiger:

*get,mpmax,mat,0,num,max !Knotenanzahl

!Knotenpunkte

*dim,nadata,array,mpmax,3 !Def. von Array ndata

*vget,nadata(1,1),node,0,loc,x !laden der x koordinaten
*vget,nadata(1,2),node,0,loc,y !laden der y koordinaten
*vget,nadata(1,3),node,0,loc,z !laden der z koordinaten

*dim,yielstr,array,mpmax,1
*vget,yielstr(1,1),node,0,sx !laden der Fließgrenzenwerte

!neue Fließgrenzen


*dim,flgr,array,9000,3 !Def. von Array flgr

*vread,flgr(1,0)=1,fliessgrenze,csv,0,1,9000 !laden der x koordinaten aus Datei
*vread,flgr(1,1)=1,fliessgrenze,csv,0,2,9000 !laden der y koordinaten aus Datei
*vread,flgr(1,2)=1,fliessgrenze,csv,0,3,9000 !laden der z koordinaten aus Datei

*dim,Yiel,array,mpmax,1
*vread,yiel(1,1)=1,fliessgrenze,csv,0,4,9000 !laden der Fließgrenzwerte aus Datei

*moper,yielstr(1,1),nadata(1,1),map,yiel(1,1),flgr(1,1),3 !mappen der Daten von flgr auf ndata

[Diese Nachricht wurde von DV01 am 11. Nov. 2013 editiert.]

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

ChristophN
Mitglied
Berechnungsingenieur


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

Beiträge: 773
Registriert: 13.12.2008

erstellt am: 11. Nov. 2013 14:39    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 DV01 10 Unities + Antwort hilfreich

Was ist denn Dein Problem, was funktioniert denn nicht?

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 11. Nov. 2013 17:43    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


fehlermeldungen.txt

 
Hallo,

erst einmal Danke dass du versuchst mir zu helfen =)

Im Anhang habe ich mal den Teil aus den Lösungsinformationen die sich auf meine Berechnung bezieht.

1.) meiner meinung nach scheint da was mit den Dimensionen der arrays nicht zu stimmen,oder?
2.)ich will durch *vget,yielstr(1,1),node,0,sx meine aktuellen fließwerte auslesen (der geometrie vor ansetzen der Last,müsste also 0 sein), geht nicht.
3.) er findet meine csv-datei gar nicht

4.) ist der weg den ich gehe der richtige? weist ansys nach der moper funktion meiner geometrie die jeweilige interpolierte fliessgrenze dem jeweiligen punkt zu?

[Diese Nachricht wurde von DV01 am 11. Nov. 2013 editiert.]

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

ChristophN
Mitglied
Berechnungsingenieur


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

Beiträge: 773
Registriert: 13.12.2008

erstellt am: 12. Nov. 2013 09:14    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 DV01 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von DV01:
*vget,yielstr(1,1),node,0,sx !laden der Fließgrenzenwerte
Wenn die Fließgrenze ohnehin am Anfang 0 ist, warum setzt Du sie dann nicht gleich so? Dann entfällt auch die erste Warnung.

Zitat:
Original erstellt von DV01:
*vread,flgr(1,0)=1,fliessgrenze,csv,0,1,9000 !laden der x koordinaten aus Datei
Wie die Fehlermeldung sagt: Du greifst auf das Element (1,0) zu, das erste Element befindet sich jedoch bei (1,1).

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 12. Nov. 2013 10:13    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

Okey, ich hab das nun geändert...

aber nach dem mappen hab ich ja zu jedem punkt eine interpolierte fliessgrenze. woher weiss nun ansys dass die fliessgrenzen fliessgrenzen sind? ich muss doch den array irgendwie einlesen,oder?

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

ChristophN
Mitglied
Berechnungsingenieur


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

Beiträge: 773
Registriert: 13.12.2008

erstellt am: 12. Nov. 2013 11:19    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 DV01 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von DV01:
woher weiss nun ansys dass die fliessgrenzen fliessgrenzen sind? ich muss doch den array irgendwie einlesen,oder?
Das hat Dir doch cgebhardt bei deiner anderen Frage erklärt:
Zitat:
Original erstellt von cgebhardt:
Hm, man könnte per Script jedem Element eine eigene Materialdefinition mit eigener Fließgrenze übergeben.
Die bereits vorliegenden Dehnungen sind dann allerdings nicht erfasst. Der Werkstoff ist sozuagen noch "jungfräulich".


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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 12. Nov. 2013 11:41    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


fehlermeldung.txt

 
mein neuer code:

*get,mpmax,mat,0,num,max !Knotenanzahl

!Knotenpunkte

*dim,nadata,array,mpmax,3 !Def. von Array ndata

*vget,nadata(1,1),node,0,loc,x !laden der x koordinaten
*vget,nadata(1,2),node,0,loc,y !laden der y koordinaten
*vget,nadata(1,3),node,0,loc,z !laden der z koordinaten

*dim,yielstr,array,mpmax,1
!*vget,yielstr(1,1),node,0,sx !laden der Fließgrenzenwerte

!neue Fließgrenzen


*dim,flgr,array,8278,3 !Def. von Array flgr

*vread,flgr(1,1)=1,fliessgrenze,csv,0,1,8278 !laden der x koordinaten aus Datei
*vread,flgr(1,2)=1,fliessgrenze,csv,0,2,8278 !laden der y koordinaten aus Datei
*vread,flgr(1,3)=1,fliessgrenze,csv,0,3,8278 !laden der z koordinaten aus Datei

*dim,yiel,array,mpmax,1
*vread,yiel(1,1)=1,fliessgrenze,csv,0,4,8278 !laden der Fließgrenzwerte aus Datei

*moper,yielstr(1,1),nadata(1,1),map,yiel(1,1),flgr(1,1),3 !mappen der Daten von flgr auf ndata

---> Fehlerdatei wieder im anhang


also ich seh 2 (3) probleme,

1. er findet nicht die maximale knotenanzahl (kann ich beheben in dem ich statt der getfunktion einfach mpmax=6822 eingebe. (kommt ja im text davor wieviel knoten erzeugt wurden)

2. er kann nicht aus meiner fliessgrenze.csv - datei lesen.. aber warum?

3. wie setze ich auf jedes element ein *anderes* material?


nr=1
*DO,nr,1,6822


MPTEMP,,,,,,,,
MPTEMP,1,20
MPDATA,EX,1,,212000                        ! Elastic modulus for material 1
MPDATA,PRXY,1,,.3                          ! poissons ratio for material 1
TB,PLAS,1,1,22,MISO                        ! Data table for nonlinear material properties: Material 1  elasto plastic von Mises isotropic hardening
TBTEMP,20                                  ! temperature
TBPT,,umfromgrad.yielstr(1.nr)              ! St�tzpunkte auf Fliesskurve -> ich müsste dann noch den umformgrad mappen?!

*ENDDO

ach, der ganze code steht bei mir unter Statisch-mechanisch- Befehle (apdl) drin. ist richtig,oder?

[Diese Nachricht wurde von DV01 am 12. Nov. 2013 editiert.]

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 12. Nov. 2013 17:47    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


ablauf.jpg

 
Okey zur Übersicht:

--> Bild auch im Ahnhang

Jetzt noch die Fragen   

1. wie schließe ich von meinen Knoten auf die Elemente?
   woher weiss man dass zb. Element 12 durch die Knoten 1043,1205, 89 und 78 entsteht?

2. Materialdefinieren: ich nehme den Mittelwert als Fliessgrenze der Knoten die das Element bilden. also fliessgrenze von knoten (1 + knoten 2 + knoten 3 + knoten 4)/4. dann muss ich definieren dass mein streckgrenze (fliessgrenze) in diesem Element dem mittelwert entspricht. wie kann man zu einem element ein bestimmtes streckgrenze zuweisen? (das gleiche gilt fürs tangentenmodul)

[Diese Nachricht wurde von DV01 am 13. Nov. 2013 editiert.]

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 15. Nov. 2013 07:52    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

keiner ne Idee?

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

DV01
Mitglied



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

Beiträge: 40
Registriert: 13.08.2013

erstellt am: 15. Nov. 2013 10: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


mapp_code.txt


ablaufdiagramm.jpg

 
so...

ich hab in den letzten tagen mich nochmal dahintergeklemmt und bin nun soweit.
mein Probleme sind noch:

1. wie schließ ich von den Elementen auf die Knoten
2. wie definiere ich ein Material mit bilinearen Verfestigung?(durch angabe Streckgrenze + Tangentenmodul)
3. wie setze ich den Materialzeiger von Material J richtig auf mein Element J

ist der Ablauf so realisierbar?

hier nun der apdl-code (im anhang ist er auch):

!Apdl-Code zum Mappen


!Knoten des Netzes ermitteln


*get,mpmax,node,,num,max !Knotenanzahl


*dim,nadata,array,mpmax,3 !Def. von Array ndata

*vget,nadata(1,1),node,0,loc,x !laden der x koordinaten
*vget,nadata(1,2),node,0,loc,y !laden der y koordinaten
*vget,nadata(1,3),node,0,loc,z !laden der z koordinaten

*dim,yielstr,array,mpmax,1 !Def. von Array yielstr


!Einlesen der externen Koordinaten

defanzahl=8278
*dim,flgr,array,defanzahl,3 !Def. von Array flgr


*vread,flgr(1,1),koord,txt,,,,defanzahl,1 !laden der x koordinaten aus Datei
(F8.6)

*vread,flgr(1,2),koord,txt,,,,defanzahl,1 !laden der y koordinaten aus Datei
(9xF8.6)

*vread,flgr(1,3),koord,txt,,,,defanzahl,1 !laden der z koordinaten aus Datei
(18xF8.6)

!Einlesen der externen Fliessgrenzen


*dim,yiel,array,mpmax,1 !Def. von Array yiel

*vread,yiel(1,1),fliessgrenze,txt,,,,defanzahl,1 !Laden der Fließgrenzwerte aus Datei
(27xF8.6)

!Mappen der Daten von flgr auf yielstr


*moper,yielstr(1,1),nadata(1,1),map,yiel(1,1),flgr(1,1),3 !Mappen der Daten von flgr auf ndata


*get,enum,elem,,num,max !Elementgesamtanzahl

!DO-SCHLEIFE
!von Knoten auf Elemente Schliessen

*DO,J,1,enum,1 !DO-Schleife,beginnt bei J=1,elemno-fach,J+1/Durchgang

*dim,elemno,array,8,1 !Element-Knoten-Zusammenhang
elemno = knotennummer der Knoten !Knotennummer von ELement J

!Material J Definieren


a=yielstr(1,elemno(1,1)) !Fliessgrenze in jedem Knoten aus mapping
b=yielstr(1,elemno(1,2))
c=yielstr(1,elemno(1,3))
d=yielstr(1,elemno(1,4))
e=yielstr(1,elemno(1,5))
f=yielstr(1,elemno(1,6))
g=yielstr(1,elemno(1,7))
h=yielstr(1,elemno(1,8))

m=(a+b+c+d+e+f+g+h)/8 !gemittelte Fliessgrenze von Material J in ELement J


MPTEMP,J,20 !Temperatur von Material J
MP,EX,J,210000 !E-Modul von Material J
MP,PRXY,J,0.3 !Poisson-Zahl von Material J

!Material mit Bilinearen isotropen Verfestigung

MP,tangmod,J,2954.2708 !Tangentenmodul von Material J

MP,yldstrs,J,m !Streckgrenze/Fließgrenze von Material J


!Materialzeiger zu Element zuweisen


MAT,1,,0,, !Materialdatenzeiger auf Element J

*Enddo

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