00001 /* 00002 * Copyright (c) 1999-2003 Bert Kampes 00003 * Copyright (c) 1999-2003 Delft University of Technology, The Netherlands 00004 * 00005 * This file is part of Doris, the Delft o-o radar interferometric software. 00006 * 00007 * Doris program is free software; you can redistribute it and/or modify 00008 * it under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation; either version 2 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * Doris is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with this program; if not, write to the Free Software 00019 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00020 * 00021 * Publications that contain results produced by the Doris software should 00022 * contain an acknowledgment. (For example: The interferometric processing 00023 * was performed using the freely available Doris software package developed 00024 * by the Delft Institute for Earth-Oriented Space Research (DEOS), Delft 00025 * University of Technology, or include a reference to: Bert Kampes and 00026 * Stefania Usai. \"Doris: The Delft Object-oriented Radar Interferometric 00027 * software.\" In: proceedings 2nd ITC ORS symposium, August 1999. (cdrom)). 00028 * 00029 */ 00030 /**************************************************************** 00031 * $Source: /users/kampes/DEVELOP/DORIS/doris/src/RCS/products.hh,v $ 00032 * $Revision: 3.7 $ 00033 * $Date: 2005/03/07 10:38:40 $ 00034 * $Author: kampes $ 00035 * 00036 * Declaration of routines for computation of products (interferogram etc.) 00037 ****************************************************************/ 00038 00039 00040 #ifndef PRODUCTS_H // guard 00041 #define PRODUCTS_H 00042 00043 #include "constants.hh" // typedefs 00044 #include "readinput.hh" // input structs 00045 #include "orbitbk.hh" // my orbit class 00046 #include "slcimage.hh" // my slc image class 00047 #include "productinfo.hh" // my 'products' class 00048 00049 00050 00051 // ______ Compute the (complex) interferogram ______ 00052 // ______ Subtract ref.pha if present ______ 00053 void compinterfero( 00054 const slcimage &master, 00055 const slcimage &slave, 00056 const input_gen &input_general, 00057 const input_interfero &input_i_interfero, 00058 const matrix<real8> &coeff_refpha); 00059 00060 00061 // ______ Subtract ref.pha from complex interferogram ______ 00062 // ______ evaluate polynomial from comprefpha ______ 00063 void subtrrefpha( 00064 const slcimage &master, 00065 const productinfo &interferogram, 00066 const input_gen &input_general, 00067 const input_subtrrefpha &input_i_subtrrefpha, 00068 const matrix<real8> &coeff_refpha); 00069 // ______ evaluate ref. pha foreach pixel ______ 00070 void subtrrefpha( 00071 const input_ell &ellips, 00072 const slcimage &master, 00073 const slcimage &slave, 00074 const productinfo &interferogram, 00075 const input_gen &input_general, 00076 const input_subtrrefpha &input_i_subtrrefpha, 00077 orbit &masterorbit, 00078 orbit &slaveorbit); 00079 00080 00081 // ______ Compute the (complex) coherence image ______ 00082 void compcoherence( 00083 const slcimage &master, 00084 const slcimage &slave, 00085 const input_gen &input_general, 00086 const input_coherence &input_i_coherence, 00087 const matrix<real8> &coeff_flatearth); 00088 00089 00090 // ______ Subtract ref.dem from complex interferogram ______ 00091 void subtrrefdem( 00092 const productinfo &interferogram, // filename, size info 00093 const productinfo &radarcoderefdem, // filename, size info 00094 const input_gen &input_general, // overwrite, memory 00095 const input_subtrrefdem &input_i_subtrrefdem); 00096 00097 00098 // ______ Scale defo-interferogram with ratio of Bperp ______ 00099 void dinsar( 00100 const input_gen &input_general, // overwrite, memory 00101 const input_dinsar &dinsarinput, 00102 const input_ell &ellips, 00103 const slcimage &master, 00104 orbit &masterorbit, 00105 const slcimage &defoslave, 00106 orbit &defoorbit, 00107 const productinfo &defointerferogram); 00108 00109 00110 #endif // PRODUCTS_H 00111 00112 00113