| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys | | |  | Ansys Discovery für Strömungssimulation, ein Seminar am 11.09.2025
|
Autor
|
Thema: Kopfzeile in Ausgabedatei (2632 mal gelesen)
|
TomK79 Mitglied Maschinenbauingenieur

 Beiträge: 17 Registriert: 19.04.2005
|
erstellt am: 22. Jul. 2005 11:14 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich möchte für einen besseren Überblick mein Ausgabetextfile mit einer Kopfzeile versehen. Dazu müsste ich aber eine Abfrage starten, ob die Ausgabedatei bereits existiert, da ich mehrere Berechnungen nacheinander durchführen möchte, die Ihre Ergebnisse in die gleiche Datei schreiben. Mit folgendem Code erzeuge ich meine Datei: !* write to file /out,Knotenplatte_ANSYS_output_LC01,txt,,APPEND *vwrite,VAR_LC,VAR_masse,VAR_USUM,VAR_SEQV,VAR_SXmax,VAR_SXmin,VAR_SYmax,VAR_SYmin,VAR_SZmax,VAR_SZmin,VAR_SXYmax,VAR_SXYmin,VAR_SYZmax,VAR_SYZmin,VAR_SXZmax,VAR_SXZmin (A8,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9,F19.9) /out Der Code den ich suche soll überprüfen, ob die Ausgabe-Datei existiert. Wenn nein, soll er sie mit einer Kopfzeile anlegen, in der beschrieben wird, was die nachfolgenden Werte bedeuten, also strings. Wenn ja, soll er gar nichts machen (nur später die Ergebnisse mit obigem Code einfügen). Ich hoffe diese Möglichkeit besteht und jemand kann mir helfen. Danke und Gruß TomK79
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sven_m2k Mitglied Dipl.-Ing. Maschinenbau, wiss. MA

 Beiträge: 58 Registriert: 15.04.2005 Autodesk Inventor 11 Professional Autodesk Mechanical 2007 Ansys 11.0
|
erstellt am: 26. Jul. 2005 23:33 <-- editieren / zitieren --> Unities abgeben:          Nur für TomK79
Direkt mit Code, der überprüft, ob die Datei existiert, kann ich nicht dienen. Ich habe mal sowas ähnliches gemacht, erst in eine Datei Headerzeilen geschrieben und dann die Ergebnisdaten der Berechnung. So ungefähr sah der Code aus: /PREP7 *dim,matfeld,array,4,9 !Feld mit Materialnummern, 9 Berechnungssaetze, Material an Platz 1 fuer Schicht oben, Platz 4 fuer unten matfeld(1,1)=4,4,4,4 !matfeld(spalte,zeile) matfeld(1,2)=1,4,4,4 matfeld(1,3)=1,1,4,4 matfeld(1,4)=1,1,1,4 matfeld(1,5)=1,1,1,1 matfeld(1,6)=1,2,3,4 matfeld(1,7)=4,3,2,1 matfeld(1,8)=5,5,5,5 matfeld(1,9)=6,6,6,6 .... Die Ergebnisdatei wird nachfolgend geöffnet und erst der Header reingeschrieben, dann die Daten (oder von mir aus Ergebnisse). Solange Du kein *CFCLOS durchführst, werden an die geöffnete Datei Werte angehangen. Das Werte in die Datei schreiben laesst sich wunderbar in ein Makro packen, dass Du innerhalb Deiner Berechnung aufrufst. Am Ende der Berechnung *CFCLOS und gut ist. *CFOPEN,ergebnis,txt *vwrite ('Test Test2 Test3 Test4') !Datum ermitteln und in Datei schreiben *GET,Akt_Datum,ACTIVE,0,DBASE,LDATE Akt_Jahr=CHRVAL(NINT(Akt_Datum/10000)) !als text alphanumeric Akt_Monat=CHRVAL(NINT((Akt_Datum-VALCHR(Akt_Jahr)*10000)/100)) Akt_Tag=CHRVAL(Akt_Datum-VALCHR(Akt_Jahr)*10000-VALCHR(Akt_Monat)*100) *vwrite,Akt_Datum (F9.0) *vwrite,Akt_Tag,Akt_Monat,Akt_Jahr ('Datum',A2,'.',A2,'.',A4) !Ansys Version und Betriebssystem ermitteln und in Datei schreiben *GET,Akt_Rev,ACTIVE,0,REV *GET,Akt_OS,ACTIVE,0,PLATFORM *vwrite,Akt_Rev,Akt_OS ('Ansys V',F4.1,' --- Plattform ',A10) *DO,i,1,9 *vwrite,matfeld(1,i),matfeld(2,i),matfeld(3,i),matfeld(4,i) (F3.0,' ',F3.0,' ',F3.0,' 'F3.0) *ENDDO !Formatbezeichnung muss gleich am Anfang der naechsten Zeile beginnen!!! *CFCLOS Habe gerade noch in der Doku gelesen, dass es ein /INQUIRE Befehl in APDL gibt, der Informationen über eine Datei (innerhalb des Dateisystems) geben kann. (EXIST, DATE, SIZE, WRITE, READ ...). Mit einer entsprechenden *IF Abfrage kannst Du das auch so lösen. Sven Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |