c************************************************************************ program extension_opacite c extension des table d'opacite opal pour X=1 c on reprend avec opa_yveline les valeurs des opacites c OPAL, on prolonge arbitrairement kappa pour X=1 c en X=1 kappa est moyenne geometrique entre X=0.8 et X=0.9 c on ajoute le point X=1 c on forme le fichier opa_yveline_etendu.dat c destine a etre exploite par la routine opa_yveline.f c on a kappa(Z, X, Log R, Log T6), T6=T/1e6, R=ro/T6^3 c----------------------------------------------------------------- use mod_evol_chim_ctes use mod_kind use mod_modele_ctes use mod_opacite use mod_outils implicit none real (kind=dp), allocatable, dimension(:,:,:,:) :: vlk real (kind=dp), allocatable, dimension(:) :: vz, vx, vt6, vlr integer :: nz,nx,nt,nr,jz,jx,jt,jr c---------------------------------------------------------------------- open(unit=11,form='unformatted',status='unknown', 1 file='~/STAR_DATA/opa_yveline.dat') read(11) nz,nx,nt,nr allocate(vlk(nz,nx+1,nt,nr),vz(nz),vx(nx+1),vt6(nt),vlr(nr)) read(11)vt6 read(11)vlr do jz=1,nz read(11) vz(jz) do jx=1,nx read(11) vx(jx) read(11) vlk(jz,jx,:,:) enddo enddo close(unit=11) c en X=1 kappa est moyenne geometrique entre X=0.8 et X=0.9 vlk(:,nx+1,:,:)=2.d0*vlk(:,nx,:,:)-vlk(:,nx-2,:,:) nx=nx+1 ; vx(nx)=1.d0 open(unit=11,form='unformatted',status='unknown', 1 file='~/STAR_DATA/opa_yveline_etendu.dat') write(11) nz,nx,nt,nr write(11)vt6 write(11)vlr do jz=1,nz write(11) vz(jz) do jx=1,nx write(11) vx(jx) write(11) vlk(jz,jx,:,:) enddo enddo close(unit=11) deallocate(vlk,vz,vx,vt6,vlr) stop end program extension_opacite