Line data Source code
1 : ! ***********************************************************************
2 : !
3 : ! Copyright (C) 2020-2021 The MESA Team
4 : !
5 : ! This program is free software: you can redistribute it and/or modify
6 : ! it under the terms of the GNU Lesser General Public License
7 : ! as published by the Free Software Foundation,
8 : ! either version 3 of the License, or (at your option) any later version.
9 : !
10 : ! This program is distributed in the hope that it will be useful,
11 : ! but WITHOUT ANY WARRANTY; without even the implied warranty of
12 : ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13 : ! See the GNU Lesser General Public License for more details.
14 : !
15 : ! You should have received a copy of the GNU Lesser General Public License
16 : ! along with this program. If not, see <https://www.gnu.org/licenses/>.
17 : !
18 : ! ***********************************************************************
19 :
20 : module other_elect_cond_opacity
21 :
22 : ! consult star/other/README for general usage instructions
23 : ! kap namelist option: use_other_elect_cond_opacity = .true.
24 : ! procedure pointers: s% kap_rq % other_elect_cond_opacity => my_routine
25 :
26 : use kap_def
27 :
28 : implicit none
29 :
30 :
31 : contains
32 :
33 0 : subroutine null_other_elect_cond_opacity( &
34 : handle, &
35 : zbar, logRho, logT, &
36 : kap, dlnkap_dlnRho, dlnkap_dlnT, ierr)
37 : use const_def, only: dp
38 : integer, intent(in) :: handle ! kap handle; from star, pass s% kap_handle
39 : real(dp), intent(in) :: zbar ! average ionic charge (for electron conduction)
40 : real(dp), intent(in) :: logRho ! the density
41 : real(dp), intent(in) :: logT ! the temperature
42 : real(dp), intent(out) :: kap ! electron conduction opacity
43 : real(dp), intent(out) :: dlnkap_dlnRho ! partial derivative at constant T
44 : real(dp), intent(out) :: dlnkap_dlnT ! partial derivative at constant Rho
45 : integer, intent(out) :: ierr ! 0 means AOK.
46 :
47 0 : write(*,*) 'no implementation for other_elect_cond_opacity'
48 0 : ierr = -1
49 :
50 : ! can first call kap_lib routine to get standard results, if desired
51 :
52 : ! call kap_get_elect_cond_opacity( &
53 : ! handle, &
54 : ! zbar, logRho, logT, &
55 : ! kap, dlnkap_dlnRho, dlnkap_dlnT, ierr)
56 :
57 0 : end subroutine null_other_elect_cond_opacity
58 :
59 : end module other_elect_cond_opacity
|