00001 /* 00002 * Member functions of the class Cmp for various r manipulations 00003 */ 00004 00005 /* 00006 * Copyright (c) 1999-2001 Eric Gourgoulhon 00007 * Copyright (c) 1999-2001 Philippe Grandclement 00008 * Copyright (c) 2001 Jerome Novak 00009 * 00010 * This file is part of LORENE. 00011 * 00012 * LORENE is free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU General Public License as published by 00014 * the Free Software Foundation; either version 2 of the License, or 00015 * (at your option) any later version. 00016 * 00017 * LORENE is distributed in the hope that it will be useful, 00018 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00020 * GNU General Public License for more details. 00021 * 00022 * You should have received a copy of the GNU General Public License 00023 * along with LORENE; if not, write to the Free Software 00024 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00025 * 00026 */ 00027 00028 00029 char cmp_r_manip_C[] = "$Header: /cvsroot/Lorene/C++/Source/Cmp/cmp_r_manip.C,v 1.2 2004/10/11 15:09:01 j_novak Exp $" ; 00030 00031 /* 00032 * $Id: cmp_r_manip.C,v 1.2 2004/10/11 15:09:01 j_novak Exp $ 00033 * $Log: cmp_r_manip.C,v $ 00034 * Revision 1.2 2004/10/11 15:09:01 j_novak 00035 * The radial manipulation functions take Scalar as arguments, instead of Cmp. 00036 * Added a conversion operator from Scalar to Cmp. 00037 * The Cmp radial manipulation function make conversion to Scalar, call to the 00038 * Map_radial version with a Scalar argument and back. 00039 * 00040 * Revision 1.1.1.1 2001/11/20 15:19:27 e_gourgoulhon 00041 * LORENE 00042 * 00043 * Revision 1.5 2001/10/29 15:37:06 novak 00044 * Ajout de Cmp::div_r() 00045 * 00046 * Revision 1.4 2000/08/31 13:04:46 eric 00047 * Ajout des fonctions mult_rsint et div_rsint. 00048 * 00049 * Revision 1.3 2000/05/22 14:39:52 phil 00050 * ajout de inc_dzpuis et dec_dzpuis 00051 * 00052 * Revision 1.2 1999/12/10 16:33:48 eric 00053 * Appel de del_deriv(). 00054 * 00055 * Revision 1.1 1999/11/30 14:22:54 eric 00056 * Initial revision 00057 * 00058 * 00059 * $Header: /cvsroot/Lorene/C++/Source/Cmp/cmp_r_manip.C,v 1.2 2004/10/11 15:09:01 j_novak Exp $ 00060 * 00061 */ 00062 00063 #include "cmp.h" 00064 #include "scalar.h" 00065 00066 00067 //---------------------------// 00068 // div_r // 00069 //---------------------------// 00070 00071 void Cmp::div_r() { 00072 00073 Scalar resu(*this) ; 00074 mp->div_r(resu) ; // Call to the Scalar version 00075 operator=(Cmp(resu)) ; 00076 00077 del_deriv() ; // Delete the derived members 00078 00079 } 00080 //---------------------------// 00081 // mult_r // 00082 //---------------------------// 00083 00084 void Cmp::mult_r() { 00085 00086 mp->mult_r(*this) ; // Call of the appropriate routine of the mapping 00087 00088 del_deriv() ; // Delete the derived members 00089 00090 } 00091 00092 //---------------------------// 00093 // mult_r_zec // 00094 //---------------------------// 00095 00096 void Cmp::mult_r_zec() { 00097 00098 Scalar resu(*this) ; 00099 mp->mult_r_zec(resu) ; // Call of the appropriate routine of the mapping 00100 operator=(resu) ; 00101 del_deriv() ; // Delete the derived members 00102 00103 } 00104 00105 //---------------------------// 00106 // mult_rsint // 00107 //---------------------------// 00108 00109 void Cmp::mult_rsint() { 00110 00111 Scalar resu(*this) ; 00112 mp->mult_rsint(resu) ; // Call of the appropriate routine of the mapping 00113 operator=(resu) ; 00114 del_deriv() ; // Delete the derived members 00115 00116 } 00117 00118 //---------------------------// 00119 // div_rsint // 00120 //---------------------------// 00121 00122 void Cmp::div_rsint() { 00123 00124 Scalar resu(*this) ; 00125 mp->div_rsint(resu) ; // Call of the appropriate routine of the mapping 00126 operator=(resu) ; 00127 del_deriv() ; // Delete the derived members 00128 00129 } 00130 00131 //---------------------------// 00132 // dec_dzpuis // 00133 //---------------------------// 00134 00135 void Cmp::dec_dzpuis() { 00136 00137 Scalar resu(*this) ; 00138 mp->dec_dzpuis(resu) ; // Call of the appropriate routine of the mapping 00139 operator=(resu) ; 00140 00141 } 00142 00143 //---------------------------// 00144 // inc_dzpuis // 00145 //---------------------------// 00146 00147 void Cmp::inc_dzpuis() { 00148 00149 Scalar resu(*this) ; 00150 mp->inc_dzpuis(resu) ; // Call of the appropriate routine of the mapping 00151 operator=(resu) ; 00152 00153 } 00154 00155 00156 00157 //---------------------------// 00158 // dec2_dzpuis // 00159 //---------------------------// 00160 00161 void Cmp::dec2_dzpuis() { 00162 00163 Scalar resu(*this) ; 00164 mp->dec2_dzpuis(resu) ; // Call of the appropriate routine of the mapping 00165 operator=(resu) ; 00166 00167 } 00168 00169 //---------------------------// 00170 // inc2_dzpuis // 00171 //---------------------------// 00172 00173 void Cmp::inc2_dzpuis() { 00174 00175 Scalar resu(*this) ; 00176 mp->inc2_dzpuis(resu) ; // Call of the appropriate routine of the mapping 00177 operator=(resu) ; 00178 00179 } 00180 00181
1.4.6