PRO open_fields_v7, indir, exp_id, c_bio_model, $ numt, doy, ts_d, ts_m, $ h_i, h_s, z_ip, z_ib, s_i, t_i, e_i, PAR, Ra, $ dhib, dhisu, dhisi, $ AoCb, dINb, dIPb, dSib, chla, eoCb, $ Argb, Argbub, $ Oxyb, Oxybub, $ DICb, Alkb, CO2b, CO2bub, $ CO2aq, HCO3m, CO32m, pH, pCO2, $ Ikab, $ dFeb, aFeb, eFeb, $ AoCt, dINt, dIPt, dSit, eoCt, Argt, $ DICt, Alkt, CO2t, Ikat, $ dFet, aFet, eFet, $ FAoC, FAoCb, FAoCsi, $ FdIN, FdINb, FdINsi, $ FCO2_atm, FCO2_bub, $ syn, rsp, lys, rem, $ lim_lig, lim_no3, lim_po4, lim_dsi, lim_tem, lim_sal ; working for source_3.05 ; Helsinki, 2014 ; Bruxelles, nov 2014 avec Julie ; this little nice script reads output from a bio simulation and extract stuff from it ; ; IN ; indir, exp_id ; OUT ; remainder ;================================================================================================== PRINT, ' indir = ', indir PRINT, ' exp_id= ', exp_id file_no = NCDF_OPEN(indir+"ice.out.nc."+exp_id, /NOWRITE) numt_no = NCDF_VARID( file_no, 'numt' ) doy_no = NCDF_VARID( file_no, 'doy' ) ts_m_no = NCDF_VARID( file_no, 'ts_m' ) ts_d_no = NCDF_VARID( file_no, 'ts_d' ) h_i_no = NCDF_VARID( file_no, 'h_i' ) h_s_no = NCDF_VARID( file_no, 'h_s' ) z_ip_no = NCDF_VARID( file_no, 'z_ip' ) z_ib_no = NCDF_VARID( file_no, 'z_ib' ) s_i_no = NCDF_VARID( file_no, 's_i' ) t_i_no = NCDF_VARID( file_no, 't_i' ) e_i_no = NCDF_VARID( file_no, 'e_i' ) PAR_no = NCDF_VARID( file_no, 'PAR' ) Ra_no = NCDF_VARID( file_no, 'ra' ) dhib_no = NCDF_VARID( file_no, 'dhib' ) dhisu_no = NCDF_VARID( file_no, 'dhisu' ) dhisi_no = NCDF_VARID( file_no, 'dhisi' ) IF ( c_bio_model EQ 'KRILL' ) THEN BEGIN AoCb_no = NCDF_VARID( file_no, 'AoCb' ) dINb_no = NCDF_VARID( file_no, 'dINb' ) dIPb_no = NCDF_VARID( file_no, 'dIPb' ) dSib_no = NCDF_VARID( file_no, 'dSib' ) chla_no = NCDF_VARID( file_no, 'Chla_bio' ) eoCb_no = NCDF_VARID( file_no, 'eoCb' ) Argb_no = NCDF_VARID( file_no, 'Argb' ) Argbub_no = NCDF_VARID( file_no, 'Argbub' ) Oxyb_no = NCDF_VARID( file_no, 'Oxyb' ) Oxybub_no = NCDF_VARID( file_no, 'Oxybub' ) DICb_no = NCDF_VARID( file_no, 'DICb' ) Alkb_no = NCDF_VARID( file_no, 'Alkb' ) CO2b_no = NCDF_VARID( file_no, 'CO2b' ) CO2bub_no = NCDF_VARID( file_no, 'CO2bub' ) CO2aq_no = NCDF_VARID( file_no, 'CO2aq' ) HCO3m_no = NCDF_VARID( file_no, 'HCO3m' ) CO32m_no = NCDF_VARID( file_no, 'CO32m' ) pH_no = NCDF_VARID( file_no, 'pH' ) pCO2_no = NCDF_VARID( file_no, 'pCO2' ) Ikab_no = NCDF_VARID( file_no, 'Ikab' ) dFeb_no = NCDF_VARID( file_no, 'dFeb' ) aFeb_no = NCDF_VARID( file_no, 'aFeb' ) eFeb_no = NCDF_VARID( file_no, 'eFeb' ) AoCt_no = NCDF_VARID( file_no, 'AoCt' ) dINt_no = NCDF_VARID( file_no, 'dINt' ) dIPt_no = NCDF_VARID( file_no, 'dIPt' ) dSit_no = NCDF_VARID( file_no, 'dSit' ) eoCt_no = NCDF_VARID( file_no, 'eoCt' ) Argt_no = NCDF_VARID( file_no, 'Argt' ) DICt_no = NCDF_VARID( file_no, 'DICt' ) Alkt_no = NCDF_VARID( file_no, 'Alkt' ) CO2t_no = NCDF_VARID( file_no, 'CO2t' ) Ikat_no = NCDF_VARID( file_no, 'Ikat' ) dFet_no = NCDF_VARID( file_no, 'dFet' ) aFet_no = NCDF_VARID( file_no, 'aFet' ) eFet_no = NCDF_VARID( file_no, 'eFet' ) FAoC_no = NCDF_VARID( file_no, 'FAoC' ) FAoCb_no = NCDF_VARID( file_no, 'FAoCb' ) FAoCsi_no = NCDF_VARID( file_no, 'FAoCsi' ) FdIN_no = NCDF_VARID( file_no, 'FdIN' ) FdINb_no = NCDF_VARID( file_no, 'FdINb' ) FdINsi_no = NCDF_VARID( file_no, 'FdINsi' ) FCO2_atm_no = NCDF_VARID( file_no, 'FCO2_atm' ) FCO2_bub_no = NCDF_VARID( file_no, 'FCO2_bub' ) syn_no = NCDF_VARID( file_no, 'syn' ) rsp_no = NCDF_VARID( file_no, 'rsp' ) lys_no = NCDF_VARID( file_no, 'lys' ) rem_no = NCDF_VARID( file_no, 'rem' ) lim_lig_no = NCDF_VARID( file_no, 'lim_lig' ) lim_no3_no = NCDF_VARID( file_no, 'lim_no3' ) lim_po4_no = NCDF_VARID( file_no, 'lim_po4' ) lim_dsi_no = NCDF_VARID( file_no, 'lim_dsi' ) lim_tem_no = NCDF_VARID( file_no, 'lim_tem' ) lim_sal_no = NCDF_VARID( file_no, 'lim_sal' ) ENDIF IF ( c_bio_model EQ 'BFMSI' ) THEN BEGIN S1cb_no = NCDF_VARID( file_no, 'S1cb' ) S2cb_no = NCDF_VARID( file_no, 'S2cb' ) dIPb_no = NCDF_VARID( file_no, 'I1pb' ) dINb_no = NCDF_VARID( file_no, 'I3nb' ) dSib_no = NCDF_VARID( file_no, 'I5sb' ) chla1_no = NCDF_VARID( file_no, 'S1lb' ) chla2_no = NCDF_VARID( file_no, 'S1lb' ) S1ct_no = NCDF_VARID( file_no, 'S1ct' ) S2ct_no = NCDF_VARID( file_no, 'S2ct' ) dIPt_no = NCDF_VARID( file_no, 'I1pb' ) dINt_no = NCDF_VARID( file_no, 'I3nt' ) dSit_no = NCDF_VARID( file_no, 'I5st' ) FS1c_no = NCDF_VARID( file_no, 'FS1c' ) FS1cb_no = NCDF_VARID( file_no, 'FS1cb' ) FS1csi_no = NCDF_VARID( file_no, 'FS1csi' ) FS1c_no = NCDF_VARID( file_no, 'FS2c' ) FS1cb_no = NCDF_VARID( file_no, 'FS2cb' ) FS1csi_no = NCDF_VARID( file_no, 'FS2csi' ) FdIN_no = NCDF_VARID( file_no, 'FI3n' ) FdINb_no = NCDF_VARID( file_no, 'FI3nb' ) FdINsi_no = NCDF_VARID( file_no, 'FI3nsi' ) syn_no = NCDF_VARID( file_no, 'rugC' ) lys_no = NCDF_VARID( file_no, 'slc' ) ;rem_no = NCDF_VARID( file_no, 'rem' ) lim_lig_no = NCDF_VARID( file_no, 'eiSI' ) lim_no3_no = NCDF_VARID( file_no, 'lim_no3' ) lim_po4_no = NCDF_VARID( file_no, 'lim_po4' ) lim_dsi_no = NCDF_VARID( file_no, 'ei5s' ) lim_tem_no = NCDF_VARID( file_no, 'et' ) ENDIF IF ( numt_no GT 0 ) THEN NCDF_VARGET, file_no, numt_no, numt IF ( doy_no GT 0 ) THEN NCDF_VARGET, file_no, doy_no, doy IF ( ts_m_no GT 0 ) THEN NCDF_VARGET, file_no, ts_m_no, ts_m IF ( ts_d_no GT 0 ) THEN NCDF_VARGET, file_no, ts_d_no, ts_d IF ( h_i_no GT 0 ) THEN NCDF_VARGET, file_no, h_i_no, h_i IF ( h_s_no GT 0 ) THEN NCDF_VARGET, file_no, h_s_no, h_s IF ( z_ip_no GT 0 ) THEN NCDF_VARGET, file_no, z_ip_no, z_ip IF ( z_ib_no GT 0 ) THEN NCDF_VARGET, file_no, z_ib_no, z_ib IF ( s_i_no GT 0 ) THEN NCDF_VARGET, file_no, s_i_no, s_i IF ( t_i_no GT 0 ) THEN NCDF_VARGET, file_no, t_i_no, t_i IF ( e_i_no GT 0 ) THEN NCDF_VARGET, file_no, e_i_no, e_i IF ( PAR_no GT 0 ) THEN NCDF_VARGET, file_no, PAR_no, PAR IF ( Ra_no GT 0 ) THEN NCDF_VARGET, file_no, Ra_no, Ra IF ( dhib_no GT 0 ) THEN NCDF_VARGET, file_no, dhib_no , dhib IF ( dhisu_no GT 0) THEN NCDF_VARGET, file_no, dhisu_no, dhisu IF ( dhisi_no GT 0) THEN NCDF_VARGET, file_no, dhisi_no, dhisi IF ( c_bio_model EQ 'KRILL' ) THEN BEGIN IF ( AoCb_no GT 0 ) THEN NCDF_VARGET, file_no, AoCb_no, AoCb IF ( dINb_no GT 0 ) THEN NCDF_VARGET, file_no, dINb_no, dINb IF ( dIPb_no GT 0 ) THEN NCDF_VARGET, file_no, dIPb_no, dIPb IF ( dsib_no GT 0 ) THEN NCDF_VARGET, file_no, dsib_no, dsib IF ( chla_no GT 0 ) THEN NCDF_VARGET, file_no, chla_no, chla IF ( eoCb_no GT 0 ) THEN NCDF_VARGET, file_no, eoCb_no, eoCb IF ( Argb_no GT 0 ) THEN NCDF_VARGET, file_no, Argb_no, Argb IF ( Argbub_no GT 0 ) THEN NCDF_VARGET, file_no, Argbub_no, Argbub IF ( Oxyb_no GT 0 ) THEN NCDF_VARGET, file_no, Oxyb_no, Oxyb IF ( Oxybub_no GT 0 ) THEN NCDF_VARGET, file_no, Oxybub_no, Oxybub IF ( DICb_no GT 0 ) THEN NCDF_VARGET, file_no, DICb_no, DICb IF ( Alkb_no GT 0 ) THEN NCDF_VARGET, file_no, Alkb_no, Alkb IF ( CO2b_no GT 0 ) THEN NCDF_VARGET, file_no, CO2b_no, CO2b IF ( CO2bub_no GT 0 ) THEN NCDF_VARGET, file_no, CO2bub_no, CO2bub IF ( CO2aq_no GT 0 ) THEN NCDF_VARGET, file_no, CO2aq_no, CO2aq IF ( HCO3m_no GT 0 ) THEN NCDF_VARGET, file_no, HCO3m_no, HCO3m IF ( CO32m_no GT 0 ) THEN NCDF_VARGET, file_no, CO32m_no, CO32m IF ( pCO2_no GT 0 ) THEN NCDF_VARGET, file_no, pCO2_no, pCO2 IF ( Ikab_no GT 0 ) THEN NCDF_VARGET, file_no, Ikab_no, Ikab IF ( dFeb_no GT 0 ) THEN NCDF_VARGET, file_no, dFeb_no, dFeb IF ( aFeb_no GT 0 ) THEN NCDF_VARGET, file_no, aFeb_no, aFeb IF ( eFeb_no GT 0 ) THEN NCDF_VARGET, file_no, eFeb_no, eFeb IF ( pH_no GT 0 ) THEN NCDF_VARGET, file_no, pH_no, pH IF ( AoCt_no GT 0 ) THEN NCDF_VARGET, file_no, AoCt_no, AoCt IF ( dINt_no GT 0 ) THEN NCDF_VARGET, file_no, dINt_no, dINt IF ( dIPt_no GT 0 ) THEN NCDF_VARGET, file_no, dIPt_no, dIPt IF ( dsit_no GT 0 ) THEN NCDF_VARGET, file_no, dsit_no, dsit IF ( eoCt_no GT 0 ) THEN NCDF_VARGET, file_no, eoCt_no, eoCt IF ( Argt_no GT 0 ) THEN NCDF_VARGET, file_no, Argt_no, Argt IF ( DICt_no GT 0 ) THEN NCDF_VARGET, file_no, DICt_no, DICt IF ( Alkt_no GT 0 ) THEN NCDF_VARGET, file_no, Alkt_no, Alkt IF ( CO2t_no GT 0 ) THEN NCDF_VARGET, file_no, CO2t_no, CO2t IF ( Ikat_no GT 0 ) THEN NCDF_VARGET, file_no, Ikat_no, Ikat IF ( dFet_no GT 0 ) THEN NCDF_VARGET, file_no, dFet_no, dFet IF ( aFet_no GT 0 ) THEN NCDF_VARGET, file_no, aFet_no, aFet IF ( eFet_no GT 0 ) THEN NCDF_VARGET, file_no, eFet_no, eFet If ( FAoC_no GT 0 ) THEN NCDF_VARGET, file_no, FAoC_no, FAoC IF ( FAoCb_no GT 0 ) THEN NCDF_VARGET, file_no, FAoCb_no, FAoCb IF ( FAoCsi_no GT 0 ) THEN NCDF_VARGET, file_no, FAoCsi_no, FAoCsi IF ( FdIN_no GT 0 ) THEN NCDF_VARGET, file_no, FdIN_no, FdIN IF ( FdINb_no GT 0 ) THEN NCDF_VARGET, file_no, FdINb_no, FdINb IF ( FdINsi_no GT 0 ) THEN NCDF_VARGET, file_no, FdINsi_no, FdINsi IF ( FCO2_atm_no GT 0 ) THEN NCDF_VARGET, file_no, FCO2_atm_no, FCO2_atm IF ( FCO2_bub_no GT 0 ) THEN NCDF_VARGET, file_no, FCO2_bub_no, FCO2_bub IF ( syn_no GT 0 ) THEN NCDF_VARGET, file_no, syn_no, syn IF ( rsp_no GT 0 ) THEN NCDF_VARGET, file_no, rsp_no, rsp IF ( lys_no GT 0 ) THEN NCDF_VARGET, file_no, lys_no, lys IF ( rem_no GT 0 ) THEN NCDF_VARGET, file_no, rem_no, rem IF ( lim_lig_no GT 0 ) THEN NCDF_VARGET, file_no, lim_lig_no, lim_lig IF ( lim_no3_no GT 0 ) THEN NCDF_VARGET, file_no, lim_no3_no, lim_no3 IF ( lim_po4_no GT 0 ) THEN NCDF_VARGET, file_no, lim_po4_no, lim_po4 IF ( lim_dsi_no GT 0 ) THEN NCDF_VARGET, file_no, lim_dsi_no, lim_dsi IF ( lim_tem_no GT 0 ) THEN NCDF_VARGET, file_no, lim_tem_no, lim_tem IF ( lim_sal_no GT 0 ) THEN NCDF_VARGET, file_no, lim_sal_no, lim_sal ENDIF IF ( c_bio_model EQ 'BFMSI' ) THEN BEGIN NCDF_VARGET, file_no, S1cb_no, S1cb NCDF_VARGET, file_no, S2cb_no, S2cb AoCb = S1cb + S2cb NCDF_VARGET, file_no, dINb_no, dINb NCDF_VARGET, file_no, dIPb_no, dIPb NCDF_VARGET, file_no, dsib_no, dsib NCDF_VARGET, file_no, chla1_no, chla1 NCDF_VARGET, file_no, chla2_no, chla2 chla = chla1 + chla2 NCDF_VARGET, file_no, S1ct_no, S1ct NCDF_VARGET, file_no, S2ct_no, S2ct AoCT = S1ct + S2ct NCDF_VARGET, file_no, dINt_no, dINt NCDF_VARGET, file_no, dIPt_no, dIPt NCDF_VARGET, file_no, dsit_no, dsit NCDF_VARGET, file_no, FS1c_no, FS1c NCDF_VARGET, file_no, FS1cb_no, FS1cb NCDF_VARGET, file_no, FS1csi_no, FS1csi NCDF_VARGET, file_no, FS1c_no, FS2c NCDF_VARGET, file_no, FS1cb_no, FS2cb NCDF_VARGET, file_no, FS1csi_no, FS2csi FAoC = FS1c + FS2c FAoCb = FS1cb + FS2cb FAoCsi = FS1csi + FS2csi NCDF_VARGET, file_no, FdIN_no, FdIN NCDF_VARGET, file_no, FdINb_no, FdINb NCDF_VARGET, file_no, FdINsi_no, FdINsi NCDF_VARGET, file_no, syn_no, syn NCDF_VARGET, file_no, rsp_no, rsp NCDF_VARGET, file_no, lys_no, lys NCDF_VARGET, file_no, rem_no, rem NCDF_VARGET, file_no, lim_lig_no, lim_lig NCDF_VARGET, file_no, lim_no3_no, lim_no3 NCDF_VARGET, file_no, lim_po4_no, lim_po4 NCDF_VARGET, file_no, lim_dsi_no, lim_dsi NCDF_VARGET, file_no, lim_tem_no, lim_tem ;NCDF_VARGET, file_no, lim_sal_no, lim_sal lim_sal = lim_lig & lim_sal[*] = 1 ENDIF NCDF_CLOSE, file_no ;================================================================================================== END