Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  WB11: Formeln in ADPL

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:  WB11: Formeln in ADPL (1913 mal gelesen)
Sunsetmajor
Mitglied



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

Beiträge: 184
Registriert: 13.02.2008

CATIA V5R18
ANSYS WB 11
Intel Core
2 CPU
2,66Ghz

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

Hallo zusammen!
Ich habe eine lineare Interpolation geschrieben, von der ich ausgehe, dass sie schneller ist als die Ansys-Interpolation, da diese hier speziell für eine 2D Tabelle geschrieben ist.
Allerdings bekomme ich einen Fehler in der Zeile:
Code:
jtoben=pre_rad(iy-1,jt-1)+(pre_rad(iy-1,jt)-pre_rad(iy-1,jt-1))/(pre_rad(0,jt)-pre_rad(0,jt-1))*(time-pre_rad(0,jt-1)


Und zwar den hier:
Code:

*** ERROR ***                          CP =      0.203  TIME= 12:39:52
Unbalanced parentheses.                                               

*** ERROR ***                          CP =      0.203  TIME= 12:39:52
The above error occurred processing field=                             
(PRE_RAD(IY-1,JT-1)+(PRE_RAD(IY-1,JT)-PRE_RAD(IY-1,JT-1))/(PRE_RAD(0,JT
)-PRE_RAD(0,JT-1))*(TIME-PRE_RAD(0,JT-1))                             
  Line=                                                                 
*set,jtoben,(pre_rad(iy-1,jt-1)+(pre_rad(iy-1,jt)-pre_rad(iy-1,jt-1))/(
(pre_rad(0,jt)-pre_rad(0,jt-1))*(time-pre_rad(0,jt-1)).



Also irgendwas ist wohl mit der Formel nicht richtig!
Für Tipps bin ich dankbar!

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

Rudolstadt
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 56
Registriert: 15.04.2010

Ansys 12.0
Studentenversion

erstellt am: 11. Nov. 2010 12:58    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 Sunsetmajor 10 Unities + Antwort hilfreich

Ich glaube, Du hast eine Klammer ganz am Ende vergessen:

Code:
jtoben=pre_rad(iy-1,jt-1)+(pre_rad(iy-1,jt)-pre_rad(iy-1,jt-1))/(pre_rad(0,jt)-pre_rad(0,jt-1))*(time-pre_rad(0,jt-1))

Grüße


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

Sunsetmajor
Mitglied



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

Beiträge: 184
Registriert: 13.02.2008

CATIA V5R18
ANSYS WB 11
Intel Core
2 CPU
2,66Ghz

erstellt am: 11. Nov. 2010 13:18    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

Super :-) Und ich schau und schau...aber das war's! Und was ist hiermit:
Code:
*** ERROR ***                          CP =      0.203  TIME= 13:15:13
Attempt to divide by zero in parameter expression.                     

*** ERROR ***                          CP =      0.203  TIME= 13:15:13
The above error occurred processing field=                             
JTOBEN+(JTUNTEN-JTOBEN)/(PRE_RAD(IY,0)-PRE_RAD(IY-1,0))*(NX_-PRE_RAD(IY
-1,0))                                                                 
  Line=                                                                 
*SET,iyjt,(jtoben+(jtunten-jtoben)/(pre_rad(iy,0)-pre_rad(iy-1,0))*(nx_
_-pre_rad(iy-1,0))).                                                   



In Zeile:
Code:
iyjt=jtoben+(jtunten-jtoben)/(pre_rad(iy,0)-pre_rad(iy-1,0))*(nx_-pre_rad(iy-1,0))


Ich weiß nicht von der eine Nulldivision sehen kann...

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

Rudolstadt
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 56
Registriert: 15.04.2010

Ansys 12.0
Studentenversion

erstellt am: 11. Nov. 2010 13: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 Nur für Sunsetmajor 10 Unities + Antwort hilfreich

Kann Dir ja offenbar nur passieren, wenn:

Code:
pre_rad(iy,0)=pre_rad(iy-1,0)

Vielleicht hilft es, vorher auf Nulldivision zu überprüfen:

Code:

*if,pre_rad(iy,0),ne,pre_rad(iy-1,0),then
  iyjt=jtoben+(jtunten-jtoben)/(pre_rad(iy,0)-pre_rad(iy-1,0))*(nx_-pre_rad(iy-1,0))
*endif


Grüße aus Stuttgart, Christian

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

Sunsetmajor
Mitglied



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

Beiträge: 184
Registriert: 13.02.2008

CATIA V5R18
ANSYS WB 11
Intel Core
2 CPU
2,66Ghz

erstellt am: 11. Nov. 2010 13:42    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

Ok, der Fehler beginnt etwas weiter oben...
Code:
*** WARNING ***                        CP =      0.203  TIME= 13:37:48
Unknown parameter name= TIME.  A value of 7.888609052E-31 will be used.

Ich habe geschrieben:

Code:
vartime=time

Bin davon ausgegangen, dass time eine globale Variable ist...Offenbar ist dem nicht so...wie kann ich einer Variable den aktuellen Wert der Zeit zuweisen?

Liebe Grüße!

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

Rudolstadt
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 56
Registriert: 15.04.2010

Ansys 12.0
Studentenversion

erstellt am: 11. Nov. 2010 14:12    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 Sunsetmajor 10 Unities + Antwort hilfreich

Du kannst über:

Code:

*get,vartime,active,0,time,wall

die aktuelle Zeit ermitteln.

Falls Du Minuten und Sekunden benötigst, mußt Du anschließend noch umrechnen.

Viel Spaß, ich hab jetzt Feierabend :-)

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

Sunsetmajor
Mitglied



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

Beiträge: 184
Registriert: 13.02.2008

CATIA V5R18
ANSYS WB 11
Intel Core
2 CPU
2,66Ghz

erstellt am: 12. Nov. 2010 10:18    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!
Die Idee mit der Fallunterscheidung hatte ich auch schon...denke, dass ich diesen Mechanismus ohnehin einbauen muss, wenn Ansys sonst abbricht.
Mit der Zeit habe ich mich wohl etwas unklar ausgedrückt...ich will nicht die aktuelle Systemzeit, sondern die Zeit innerhalb der Simulation. Also wenn mein erster Lastschritt 10s dauert, dann sollte time zum Ende des Lastschritts auch 10s. Diese Art von Zeit suche ich...kann man die auch herzaubern?
Liebe Grüße und Danke!

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. 2010 10: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 Nur für Sunsetmajor 10 Unities + Antwort hilfreich

Code:
*GET, deltat, active, 0, solu, dtime
gibt den aktuellen Zeitschritt zurück. Die Gesamtzeit bekommt man einfach durch Addition aller Zeitschritte. Du musst dir noch etwas überlegen, wenn Zeitschrittverkürzungen auftreten können, das ist aber nicht schwer.

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

Sunsetmajor
Mitglied



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

Beiträge: 184
Registriert: 13.02.2008

CATIA V5R18
ANSYS WB 11
Intel Core
2 CPU
2,66Ghz

erstellt am: 12. Nov. 2010 11:17    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!
Das klingt super! Eine Addition der Zeitschritte bekomme ich auch noch hin :-)
Was ist eine Zeitschrittverkürzung? Ist es nicht so, dass ein Schritt von 0,1s auch 0,1s dauert? Wenn Verkürzungen auftreten, wie stelle ich das fest?
Liebe Grüße und herzlichen Dank schonmal!

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. 2010 13: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 Nur für Sunsetmajor 10 Unities + Antwort hilfreich

Zeitschrittverkürzungen treten bei aktivierter automatischer Zeitschrittweitensteuerung (autots, on) und Konvergenzproblemen auf. Wenn du deine Zeitschritte von Hand festlegst und keine automat. Schrittweite verwendest, hast du da nichts zu befürchten. Ansonsten sagt er dir das an, mit irgendeiner Meldung, in der das Wort "bisection" vorkommt.

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