00001 #ifndef __FAdiRestorationLS__ 00002 #define __FAdiRestorationLS__ 00003 00004 00024 #include <stdio.h> 00025 00026 #include "AFSplittedRestorationLS.hpp" 00027 00028 class FAdiRestorationLS : public AFSplittedRestorationLS 00029 { 00030 protected: 00031 00032 bool cfl; 00033 00034 AFSymMatrix* A1left; // (I-tau*Bx) 00035 AFSymMatrix* A2left; // (I-tau*By) 00036 00037 AFSymMatrix* A1right; // (I+tau*Bx) 00038 AFSymMatrix* A2right; // (I+tau*By) 00039 00040 protected: 00041 00042 // U(k+1) <--- U(k) 00043 virtual FImage* solveSingle(FImage* uk, FImage* uk1=0); 00044 00045 public: 00046 FAdiRestorationLS(int outerIter, int innerIter, double t, AFSpatialDiscretisation* smodel, 00047 bool cflTest=true, bool normalized=true, bool nonLinearFlag=true); 00048 FAdiRestorationLS(int model, int outerIter, int innerIter, double t, AFSpatialDiscretisation* smodel, 00049 bool cflTest=true, bool normalized=true, bool nonLinearFlag=true); 00050 virtual ~FAdiRestorationLS(){} 00051 00052 00053 virtual void report(FILE* file){ fprintf(file,"CFL ADI 2D restoration\n"); } 00054 }; 00055 00056 00057 #endif