00001 module interface_modules
00002 use phys_constant, only : long
00003 implicit none
00004 interface
00005
00006 subroutine poisson_solver(sou, pot)
00007 real(8),pointer :: sou(:,:,:),pot(:,:,:)
00008 end subroutine poisson_solver
00009
00010
00011
00012 subroutine poisson_solver_no_lm1(sou, pot)
00013 real(8),pointer :: sou(:,:,:),pot(:,:,:)
00014 end subroutine poisson_solver_no_lm1
00015 subroutine grgrad_midpoint(fnc,dfdx,dfdy,dfdz)
00016 real(8), pointer :: fnc(:,:,:)
00017 real(8), pointer :: dfdx(:,:,:)
00018 real(8), pointer :: dfdy(:,:,:)
00019 real(8), pointer :: dfdz(:,:,:)
00020 end subroutine grgrad_midpoint
00021 subroutine grgrad_4th(fnc,dfdx,dfdy,dfdz,irg,itg,ipg)
00022 real(8), pointer :: fnc(:,:,:)
00023 real(8), intent(out) :: dfdx, dfdy, dfdz
00024 integer :: irg, itg, ipg
00025 end subroutine grgrad_4th
00026 subroutine interpo_linear_type0(val,fnc,ir,it,ip)
00027 real(8) :: val
00028 real(8), pointer :: fnc(:,:,:)
00029 integer :: ir, it, ip
00030 end subroutine interpo_linear_type0
00031 subroutine interpo_linear_type0_2Dsurf(val,fnc,it,ip)
00032 real(8) :: val
00033 real(8), pointer :: fnc(:,:)
00034 integer :: it, ip
00035 end subroutine interpo_linear_type0_2Dsurf
00036 subroutine interpo_lag4th_2Dsurf(val,fnc,tv,pv)
00037 real(8), intent(out) :: val
00038 real(8), intent(in) :: tv, pv
00039 real(8), pointer :: fnc(:,:)
00040 end subroutine interpo_lag4th_2Dsurf
00041 subroutine interpo_gr2fl(a,b)
00042 real(8), pointer :: a(:,:,:), b(:,:,:)
00043 end subroutine interpo_gr2fl
00044 subroutine interpo_fl2gr(a,b)
00045 real(8), pointer :: a(:,:,:), b(:,:,:)
00046 end subroutine interpo_fl2gr
00047 subroutine interpo_radial1p_grav(grv,val,rv,it,ip)
00048 real(8), pointer :: grv(:,:,:)
00049 real(8), intent(out) :: val
00050 real(8), intent(in) :: rv
00051 integer, intent(in) :: it, ip
00052 end subroutine interpo_radial1p_grav
00053
00054 subroutine sourceterm_HaC(sou)
00055 real(8), pointer :: sou(:,:,:)
00056 end subroutine sourceterm_HaC
00057 subroutine sourceterm_trG(sou)
00058 real(8), pointer :: sou(:,:,:)
00059 end subroutine sourceterm_trG
00060 subroutine sourceterm_MoC(souvec,sou)
00061 real(8), pointer :: sou(:,:,:)
00062 real(8), pointer :: souvec(:,:,:,:)
00063 end subroutine sourceterm_MoC
00064 subroutine compute_shift(potx,poty,potz,gvec,bfnc)
00065 real(8), pointer :: bfnc(:,:,:)
00066 real(8), pointer :: gvec(:,:,:,:)
00067 real(8), pointer :: potx(:,:,:), poty(:,:,:), potz(:,:,:)
00068 end subroutine compute_shift
00069 subroutine compute_alps2alph(pot,psi)
00070 real(8), pointer :: pot(:,:,:), psi(:,:,:)
00071 end subroutine compute_alps2alph
00072
00073 subroutine hydrostatic_eq(emd)
00074 real(8), pointer :: emd(:,:,:)
00075 end subroutine hydrostatic_eq
00076 subroutine calc_surface(rsnew,emd)
00077 real(8), pointer :: emd(:,:,:)
00078 real(8), pointer :: rsnew(:,:)
00079 end subroutine calc_surface
00080 subroutine error_matter(pot,pot_bak,error,flag)
00081 real(8), pointer :: pot(:,:,:), pot_bak(:,:,:)
00082 real(8), intent(out) :: error
00083 integer, intent(out) :: flag
00084 end subroutine error_matter
00085
00086 subroutine update_grfield(pot,grfield,convf)
00087 real(8), pointer :: pot(:,:,:)
00088 real(8), pointer :: grfield(:,:,:)
00089 real(8), intent(in) :: convf
00090 end subroutine update_grfield
00091 subroutine update_matter(potf,mtfield,convf)
00092 real(8), pointer :: potf(:,:,:)
00093 real(8), pointer :: mtfield(:,:,:)
00094 real(8), intent(in) :: convf
00095 end subroutine update_matter
00096 subroutine update_surface(potrs,rsnew,convf)
00097 real(8), pointer :: potrs(:,:)
00098 real(8), pointer :: rsnew(:,:)
00099 real(8), intent(in) :: convf
00100 end subroutine update_surface
00101 subroutine update_parameter(convf)
00102 real(8), intent(in) :: convf
00103 end subroutine update_parameter
00104 subroutine update_parameter_axisym(convf)
00105 real(8), intent(in) :: convf
00106 end subroutine update_parameter_axisym
00107 subroutine update_parameter_triaxial(convf)
00108 real(8), intent(in) :: convf
00109 end subroutine update_parameter_triaxial
00110
00111 subroutine source_rest_mass(souf)
00112 real(8), pointer :: souf(:,:,:)
00113 end subroutine source_rest_mass
00114 subroutine source_adm_mass(soug,souf)
00115 real(8), pointer :: soug(:,:,:), souf(:,:,:)
00116 end subroutine source_adm_mass
00117 subroutine source_komar_mass(soug,souf)
00118 real(8), pointer :: soug(:,:,:), souf(:,:,:)
00119 end subroutine source_komar_mass
00120 subroutine source_komar_mass_compact(souf)
00121 real(8), pointer :: souf(:,:,:)
00122 end subroutine source_komar_mass_compact
00123 subroutine source_proper_mass(souf)
00124 real(8), pointer :: souf(:,:,:)
00125 end subroutine source_proper_mass
00126 subroutine source_ang_mom(souf)
00127 real(8), pointer :: souf(:,:,:)
00128 end subroutine source_ang_mom
00129 subroutine source_ang_mom_asymp(sousf,irg)
00130 real(8), pointer :: sousf(:,:)
00131 integer, intent(in) :: irg
00132 end subroutine source_ang_mom_asymp
00133 subroutine source_mp_minus_madm(soug,souf)
00134 real(8), pointer :: soug(:,:,:), souf(:,:,:)
00135 end subroutine source_mp_minus_madm
00136 subroutine vol_int_fluid(souf,vol)
00137 real(8), pointer :: souf(:,:,:)
00138 real(8), intent(out) :: vol
00139 end subroutine vol_int_fluid
00140 subroutine vol_int_grav(soug,vol)
00141 real(8), pointer :: soug(:,:,:)
00142 real(8), intent(out) :: vol
00143 end subroutine vol_int_grav
00144 subroutine surf_int_grav(sousf,surf,irg)
00145 real(8), pointer :: sousf(:,:)
00146 real(8), intent(out) :: surf
00147 integer, intent(in) :: irg
00148 end subroutine surf_int_grav
00149 subroutine radial_int_fluid(sou,radius,it,ip)
00150 real(8), pointer :: sou(:)
00151 real(8), intent(out) :: radius
00152 integer, intent(in) :: it, ip
00153 end subroutine radial_int_fluid
00154
00155 subroutine minv(aa,bb,nn,nnz)
00156 integer :: nn, nnz
00157 real(8) :: aa(nnz,nnz),bb(nnz)
00158 end subroutine minv
00159
00160 end interface
00161 end module interface_modules