!--------1---------2---------3---------4---------5---------6---------7---------8 subroutine log_file !--------1---------2---------3---------4---------5---------6---------7---------8 use global_constants, only : rkind, year, kilometer, time, density, density & & , mass_ratio_rock_H2O_init, imr, itmax, dt, density_rock use global_parameters, only : irb, temp, iau, radius_body, temperature_initial& & , fw, fname_center, fname_all, fname_E, fname_Eall, fname_Enew, fname_Ecum & & , irmax, dr, fname_radius, fname_max use heat_parameters, only : thermometric_diffusivity use heat_radiogenic, only : iAl, initial_ratioAl, initial_ratioFe, ftime implicit none character*16 :: fname_log fw = 10000*irb + 100*iau + iAl write(fname_center,"(1hr,i4.4,2hAl,i3.3,4h.txt)") irb, iAl write(fname_all,"(1hr,i4.4,2hAl,i3.3,5ha.txt)") irb, iAl write(fname_radius,"(1hr,i4.4,2hAl,i3.3,5hr.txt)") irb, iAl write(fname_E,"(1hr,i4.4,2hAl,i3.3,5hE.txt)") irb, iAl write(fname_Eall,"(1hr,i4.4,2hAl,i3.3,6hEa.txt)") irb, iAl write(fname_Enew,"(1hr,i4.4,2hAl,i3.3,6hEn.txt)") irb, iAl write(fname_Ecum,"(1hr,i4.4,2hAl,i3.3,6hEc.txt)") irb, iAl write(fname_max,"(1hr,i4.4,2hAl,i3.3,5hm.txt)") irb, iAl write(fname_log,"(1hr,i4.4,2hAl,i3.3,4h.log)") irb, iAl open(14, file = fname_log) write(14,'(1x,a)') fname_all write(14,'(4(1x,a,1x,i5))') 'imr =', imr, 'irb =', irb, 'iau =', iau, 'iAl =', iAl write(14,'(1x,a,1x,f12.5)') 'radius_body[km] is', radius_body(irb)/kilometer write(14,'(1x,a,1x,f12.5)') 'temperature_initial[K] is', temperature_initial(iau) write(14,'(1x,a,1x,e12.5)') 'initial_ratio of Al is', initial_ratioAl(iAl) write(14,'(1x,a,1x,e12.5)') 'time after CAI[yr] is ', ftime(iAl) write(14,'(1x,a)') ' ' call flush(14) return end subroutine log_file !--------1---------2---------3---------4---------5---------6---------7---------8 subroutine log_error(i,name_sub) !--------1---------2---------3---------4---------5---------6---------7---------8 use global_constants, only : rkind, time, year, kilometer, GO_NEXT, Myr use global_parameters, only : irb, temp, iau, radius_body, temperature_initial use material_parameters, only : mn, iw, ir, ii, melt & & , radius_rock, radius_water, radius_ice & & , mass_ratio_rock, mass_ratio_anhydrous_rock, mass_ratio_hydrous_rock & & , mass_ratio_ice, mass_ratio_water use heat_radiogenic, only : iAl, ftime implicit none character(*),intent(in) :: name_sub integer,intent(in) :: i open(14, file = 'heatlayer.log') write(14,'(1x,a,a)') 'ERROR occurs at ', name_sub write(14,'(1x,f11.7,2i4,f10.4,l1,4e11.3)') ((time/year)+ftime(iAl))/Myr, i, mn(i) & & , temp(i), melt(i), mass_ratio_ice(i), mass_ratio_water(i), mass_ratio_rock(i) write(14,'(3(1x,a,i4))') 'ir = ' , ir, 'iw = ', iw, 'ii = ', ii write(14,'(3(1x,f12.5))') radius_rock/kilometer, radius_water/kilometer, radius_ice/kilometer write(14,'(1x,a)') ' ' call flush(14) GO_NEXT = .TRUE. return end subroutine log_error