Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

sequencer_io.h

Go to the documentation of this file.
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

 Webmaster