00001 /* 00002 * Copyright (c) 2001 The AUTHORS 00003 * Romeu Andre' Pieritz, Ph.D. - romeu_pieritz@hotmail.com 00004 * Rafael Mendes, Eng. – mendes_rafael@yahoo.com 00005 * Rodrigo Ferraz de Andrade, Eng. – rferraz@iname.com 00006 * All rights reserved. 00007 * 00008 * Permission to use, copy and distribute this software and its 00009 * documentation for educational and personal use, without fee is hereby granted, 00010 * provided that the above copyright notice and the following 00011 * two paragraphs appear in all copies of this software. 00012 * 00013 * IN NO EVENT SHALL THE AUTHORS BE LIABLE TO ANY PARTY FOR 00014 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT 00015 * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE AUTHORS 00016 * HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00017 * 00018 * THE AUTHORS SPECIFICALLY DISCLAIMS ANY WARRANTIES, 00019 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 00020 * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HERE UNDER IS 00021 * ON AN "AS IS" BASIS, AND THE AUTHORS HAVE NO OBLIGATION TO 00022 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. 00023 * 00024 * SINMEC Lab. - CFD Sinflow Project - http://www.sinmec.ufsc.br/cfd 00025 */ 00026 00027 00028 // File Define 00029 #ifndef __CSFL_NUM_SEQUENCER_SEQUENCER_IO_H__ 00030 #define __CSFL_NUM_SEQUENCER_SEQUENCER_IO_H__ 00031 00032 // Include ===================================================================== 00033 #include <csfl/num/sequencer/simple/energy.h> 00034 #include <csfl/num/sequencer/simplec/energy.h> 00035 #include <csfl/num/sequencer/mesh.h> 00036 00037 00038 // Namespace 00039 namespace csfl { 00040 00041 //============================================================================== 00042 // enum SequencerType: Sequencer Type 00043 //============================================================================== 00044 typedef 00045 enum _SequencerType { 00046 stNULL, 00047 stEnergy, 00048 stSimple, 00049 stSimplec, 00050 stSimpleEnergy, 00051 stSimplecEnergy, 00052 stMesh 00053 } 00054 SequencerType; 00055 00056 //============================================================================== 00057 // Class ISequencerIO 00058 // Description: Base Class for the sequence input/output 00059 //============================================================================== 00060 00061 class ISequencerIO : 00062 virtual public ISFLObject 00066 { 00067 00068 public: 00073 ISequencerIO( ISequencer * = NULL ); 00074 ~ISequencerIO(); 00075 00080 void SetSequencer( ISequencer * = NULL ); 00081 00083 void SetScreenFlags(); 00084 00085 //======================================================== Output Screen Methods 00086 00088 void OutputScreen( ISFLObject * = NULL ); 00089 00094 void OutputScreenMatrixA( ISFLObject * = NULL ); 00095 00100 void OutputScreenVectorB( ISFLObject * = NULL ); 00101 00106 void OutputScreenVectorX( ISFLObject * = NULL ); 00107 00111 void OutputScreenLinearSystem( ISFLObject * = NULL ); 00112 00114 void OutputScreenMonitor( ISFLObject * = NULL ); 00115 00120 void OutputScreenWorkSheet( ISFLObject * = NULL ); 00121 00125 void OutputScreenPressure( ISFLObject * = NULL ); 00126 00130 void OutputScreenVelocity( ISFLObject * = NULL ); 00131 00136 void OutputScreenFaceVelocity( ISFLObject * = NULL ); 00137 00142 void OutputScreenFaceVelocityU( ISFLObject * = NULL ); 00143 00148 void OutputScreenFaceVelocityV( ISFLObject * = NULL ); 00149 00154 void OutputScreenFaceTemperature( ISFLObject * = NULL ); 00155 00159 void OutputScreenAbsoluteVelocity( ISFLObject * = NULL ); 00160 00164 void OutputScreenUVelocity( ISFLObject * = NULL ); 00165 00169 void OutputScreenVVelocity( ISFLObject * = NULL ); 00170 00174 void OutputScreenMassBalance( ISFLObject * = NULL ); 00175 00179 void OutputScreenNusseltNumber( ISFLObject * = NULL ); 00180 00186 void OutputScreenDb( ISFLObject * = NULL ); 00187 00193 void OutputScreenDbu( ISFLObject * = NULL ); 00194 00200 void OutputScreenDbv( ISFLObject * = NULL ); 00201 00205 void OutputScreenTemperature( ISFLObject * = NULL ); 00206 00210 void OutputScreenError( ISFLObject * = NULL ); 00211 00215 void OutputScreenSteadyStateError( ISFLObject * = NULL ); 00216 00218 void OutputScreenMonitorT( ISFLObject * = NULL ); 00219 00220 00221 //========================================================== Output File Methods 00222 00224 void SetFileFlags( ostream& ); 00225 00230 void SetFilePath( const IString & ); 00231 00233 IString FilePath() { return cwdpath; } 00234 00239 void OutputFileVolumeCenterCoordinates( ISFLObject * = NULL ); 00240 00245 void OutputFileError( ISFLObject * = NULL ); 00246 00251 void OutputFileSteadyStateError( ISFLObject * = NULL ); 00252 00257 void OutputFileStreamLine(ISFLObject * = NULL ); 00258 00264 void OutputFileIteract( ISFLObject * = NULL ); 00265 00270 void OutputFileVelocity( ISFLObject * = NULL); 00271 00276 void OutputFilePressure(ISFLObject * = NULL ); 00277 00282 void OutputFileTemperature( ISFLObject * = NULL ); 00283 00288 void OutputFileHeatFlux( ISFLObject * = NULL ); 00289 00295 void OutputFileFaceHeatFlux( ISFLObject * = NULL ); 00296 00302 void OutputFileNusseltNumber( ISFLObject * = NULL ); 00303 00309 void OutputFileLinearSystem( ISFLObject * = NULL ); 00310 00315 void OutputFileMatrixA( ISFLObject * = NULL ); 00316 00321 void OutputFileVectorB( ISFLObject * = NULL ); 00322 00327 void OutputFileVectorX( ISFLObject * = NULL ); 00328 00329 protected: 00330 SequencerType stype; 00331 ISequencer *sequencer; 00332 IString cwdpath, path; 00333 00334 }; 00335 00336 } // csfl namespace 00337 00338 #endif // __CSFL_NUM_SEQUENCER_SEQUENCER_IO_H__
CFD Project
|
Documents |
Downloads |
Contact us |
Use Terms |
|
|||
© SINMEC/EMC/UFSC,
2001. |
All rights
reserved. |
Last Update: Jan. 18, 2002 |
|