strot_dirac_upmetr.C

00001 /*
00002  *  Function Star_rot_Dirac::update_metric
00003  *
00004  *    (see file star_rot_dirac.h for documentation).
00005  *
00006  */
00007 
00008 /*
00009  *   Copyright (c) 2005 Lap-Ming Lin & Jerome Novak
00010  *
00011  *   This file is part of LORENE.
00012  *
00013  *   LORENE is free software; you can redistribute it and/or modify
00014  *   it under the terms of the GNU General Public License version 2
00015  *   as published by the Free Software Foundation.
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 char strot_dirac_upmetr_C[] = "$Header: /cvsroot/Lorene/C++/Source/Star/strot_dirac_upmetr.C,v 1.3 2005/03/25 13:47:26 j_novak Exp $" ;
00029 
00030 /*
00031  * $Id: strot_dirac_upmetr.C,v 1.3 2005/03/25 13:47:26 j_novak Exp $
00032  * $Log: strot_dirac_upmetr.C,v $
00033  * Revision 1.3  2005/03/25 13:47:26  j_novak
00034  * Added the update of log(Q).
00035  *
00036  * Revision 1.2  2005/02/17 17:30:55  f_limousin
00037  * Change the name of some quantities to be consistent with other classes
00038  * (for instance nnn is changed to nn, shift to beta, beta to lnq...)
00039  *
00040  * Revision 1.1  2005/01/31 08:51:48  j_novak
00041  * New files for rotating stars in Dirac gauge (still under developement).
00042  *
00043  *
00044  * $Header: /cvsroot/Lorene/C++/Source/Star/strot_dirac_upmetr.C,v 1.3 2005/03/25 13:47:26 j_novak Exp $
00045  *
00046  */
00047 
00048 
00049 // Lorene headers
00050 #include "star_rot_dirac.h"
00051 
00052 #include "utilitaires.h"
00053 #include "unites.h" 
00054 
00055 void Star_rot_Dirac::update_metric(){
00056 
00057   // Lapse function 
00058   // ---------------
00059 
00060   nn = exp( logn ) ;
00061 
00062   nn.std_spectral_base() ; // set the bases for spectral expansions
00063 
00064 
00065   // Quantity log(Q)
00066   //----------------
00067 
00068   lnq = log(qqq) ;
00069   lnq.std_spectral_base() ;
00070 
00071   // Comformal factor $\Psi^4$
00072   // -------------------------
00073 
00074   psi4 = (qqq * qqq) / (nn * nn) ;
00075 
00076   psi4.std_spectral_base() ;
00077 
00078   // Factor $\Psi^2$
00079   // ----------------
00080 
00081   psi2 = sqrt( psi4 ) ;
00082 
00083   psi2.std_spectral_base() ;
00084 
00085   // Quantity $ln( \Psi )$
00086   // ---------------------
00087 
00088   ln_psi = 0.5*log( psi2 ) ;
00089 
00090   ln_psi.std_spectral_base() ;
00091 
00092   // Conformal metric $\tilde{\gamma}$ 
00093   // --------------------------------------
00094 
00095   tgamma = flat.con() + hh ;   // contravariant representation 
00096                                // $\tilde{\gamma}^{ij}$ 
00097 
00098   // Physical metric $\gamma$
00099   // -----------------------------
00100 
00101   gamma = tgamma.con() / psi4 ;    // contravariant representation
00102                                  //  $\gamma^{ij}$
00103 
00104 
00105   // Quantities $A^{ij}$, $\tilde{A}_{ij}, and $\tilde{A}_{ij} A^{ij}$
00106   // -----------------------------------------------------------------
00107 
00108   aa = ( beta.ope_killing_conf(flat) - hh.derive_lie(beta)) 
00109     / ( 2*nn ) ;
00110 
00111   taa = aa.up_down(tgamma) ;
00112 
00113   aa_quad = contract(taa, 0, 1, aa, 0, 1) ;
00114 
00115   aa_quad.std_spectral_base() ;
00116 
00117 
00118   // The derived quantities are no longer up to date :
00119   // ------------------------------------------------
00120 
00121   del_deriv() ;
00122 
00123 }
00124 
00125 
00126 

Generated on Tue Feb 7 01:35:20 2012 for LORENE by  doxygen 1.4.6