PROGRAM Convert_rcm_to_tecplot ! USE Rcm_variables ! USE Rcm_io USE Rcm_mod_subs IMPLICIT NONE INTEGER, PARAMETER :: N_GC=0 ! include 'mpif90.h' ! INTEGER :: itime = -999, time_min = -999, record_number = -1 ! CHARACTER (LEN=24) :: filename_out_1d = "rcm-output-1D-xxxxxx.dat", & filename_out_2d = "rcm-output-2D-xxxxxx.dat", & filename_out_3d = "rcm-output-3D-xxxxxx.dat" CHARACTER (LEN=10) :: time_string = "xxxxxxxxxx", run_id_string CHARACTER (LEN=12) :: char_date, char_time CHARACTER (LEN=05) :: char_kvalue='xxxxx' ! INTEGER :: i,j,k, k_zone, rec_1, rec_2, k_selected=0, k_start, k_stop REAL (rprec), DIMENSION (1-n_gc:isize+n_gc, 1-n_gc:jsize+n_gc):: RCM_p,& RCM_n, RCM_T, RCM_PVgamma, MHD_p, veff, & temperature=0.0, density=0.0, birk_mhd=0.0, & RCm_p_40kv = 0.0 LOGICAL :: do_3d ! ! WRITE (*,'(A)',ADVANCE='NO') 'ENTER RUN LABEL (10 CHARS MAX):__' READ (*,*) run_id_string WRITE (*,'(A)',ADVANCE='NO') 'ENTER RCM RECORDS TO START AND STOP, do_3d: ' READ (*,*) rec_1, rec_2, do_3d IF (do_3d) THEN WRITE (*,'(A)',ADVANCE='NO') 'ENTER K-CHANNEL TO WRITE (-1 FOR ALL): ' READ (*,*) k_selected END IF ! ! CALL Read_grid () CALL Read_plasma () CALL Read_qtcond () ! ! DO record_number = rec_1, rec_2 ! CALL Read_array ('rcmbndloc', record_number, label, ARRAY_1D = bndloc); imin_j = CEILING(bndloc) ! CALL Read_array ('rcmxmin' , record_number, label, ARRAY_2D = xmin ) CALL Read_array ('rcmymin' , record_number, label, ARRAY_2D = ymin ) CALL Read_array ('rcmvm' , record_number, label, ARRAY_2D = vm ) CALL Read_array ('rcmbmin' , record_number, label, ARRAY_2D = bmin ) ! CALL Read_array ('rcmv' , record_number, label, ARRAY_2D = v ) CALL Read_array ('rcmbirk' , record_number, label, ARRAY_2D = birk ) CALL Read_array ('rcmpedlam', record_number, label, ARRAY_2D = pedlam) CALL Read_array ('rcmpedpsi', record_number, label, ARRAY_2D = pedpsi) CALL Read_array ('rcmhall' , record_number, label, ARRAY_2D = hall ) CALL Read_array ('rcmssequat', record_number, label, ARRAY_1D = ss ) CALL Read_array ('rcmvpar' , record_number, label, ARRAY_2D = vpar ) !! CALL Read_array ('rcmbirkmhd',record_number, label, ARRAY_2D = birk_mhd) !! CALL Read_array ('rcmtemperature',record_number, label, ARRAY_2D = temperature) !! CALL Read_array ('rcmdensity',record_number, label, ARRAY_2D = density) ! CALL Read_array ('rcmeeta' , record_number, label, ARRAY_3D = eeta ) ! print*,'tecploteta(10,27,2)=',eeta(1,27,32), eeta(1,27,60), eeta(1,27,90) CALL Read_array ('rcmeflux' , record_number, label, ARRAY_3D = eflux ) CALL Read_array ('rcmeavg' , record_number, label, ARRAY_3D = eavg ) ! itime = label%intg(6) time_min = label%intg(3)*60 + label%intg(4) + NINT(REAL(label%intg(5))/60) WRITE (time_string,'(I2.2,A1,I2.2,A1,I2.2)') label%intg(3),":",label%intg(4),":",label%intg(5) WRITE (*,'(A,I6.6,A,A10,A)',ADVANCE='NO') 'ITIME=', itime, ' T=', time_string ! ! WRITE (filename_out_2d(15:16),'(I2.2)') label%intg(3) WRITE (filename_out_2d(17:18),'(I2.2)') label%intg(4) WRITE (filename_out_2d(19:20),'(I2.2)') label%intg(5) WRITE (filename_out_3d(15:16),'(I2.2)') label%intg(3) WRITE (filename_out_3d(17:18),'(I2.2)') label%intg(4) WRITE (filename_out_3d(19:20),'(I2.2)') label%intg(5) ! RCM_p = 0. RCM_p_40kv = 0.0 do i=1,isize do j=1,jsize if( i= 20.E+3 .AND. alamc(k)*vm(i,j) <= 60.E+3) THEN RCM_p_40kv(i,j) = RCM_p_40kv(i,j) + & vm(i,j)**2.5*eeta(i,j,k)*ABS(alamc(k)) END IF end do end if ! end do if (i==10) then ! print*, 'eta=',j,eeta(10,j,31:40) end if end do ! do j=1,jsize ! print*,'eta=',j, eeta(i,:,2) end do RCM_p = RCM_p * 1.67E-35/ 1.0E-9 RCM_p_40kv = RCM_p_40kv * 1.67E-35/ 1.0E-9 ! print*,'p=',RCM_p_40kv(10,27) RCM_pvgamma = 0. do i=1,isize; do j=1,jsize if( i