metno / emep-ctm

Open Source EMEP/MSC-W model
GNU General Public License v3.0
27 stars 18 forks source link

Shipping emissions version r4.36 #92

Open raonunes opened 2 years ago

raonunes commented 2 years ago

I'm trying to run EMEP version r4.36 using the shipping emissions inventory of the previous version r4.17. I know that shipping emissions are include in the GNFRemis_EMEP01_2015.nc file but I want to isolate them. I'm tried the new emission format but without success. I also tried red the file using the emis_inputlist(1)%name= 'DataDir/FMIGlobShip2015mon.nc', but also without success.

Any idea how I can use the emissions from the FMIGlobShip2015mon.nc file in the r4.36 version?

KR,

Rafael.

gitpeterwind commented 2 years ago

Hi Rafael, I am not sure what is exactly in your FMIGlobShip2015mon.nc file. What did you try? Normally you can read NOx for example with (see documentation):

Emis_sourceFiles(1)%filename = 'DataDir/FMIGlobShip2015mon.nc',
Emis_sourceFiles(1)%periodicity='monthly',
Emis_sourceFiles(1)%source(1)%varname='NOx',
Emis_sourceFiles(1)%source(1)%species='nox',
Emis_sourceFiles(1)%source(1)%sector=8, ! assumes GNFR
Emis_sourceFiles(1)%source(1)%units='kg',
raonunes commented 2 years ago

Hi Peter, Thank you for your answer. I tried this form but not worked. My FMIGlobShip2015mon.nc is the shipping emissions file available in the r4.17 version (A global monthly shipping emissions file from FMI). I tried this form but not worked. However, I was able to use the new emission format to read emissions from the ECLIPSE V6b global emission fields GAIS model.

I can send you my config_emep.nml via email if you want to analyse.

Thank you!

gitpeterwind commented 2 years ago

I can send you my config_emep.nml via email if you want to analyse.

Yes, please, you can send me the config_emep.nml and the standard output (what you see "on the screen", that starts with Found 512 MPI processes available or similar)

gitpeterwind commented 2 years ago

The file FMIGlobShip2015mon.nc provided does not have a projection attribute. You can either add as global atttribute in the file:

projection = "lon lat" 

or add in the config_emep.nml:

Emis_sourceFiles(1)%projection='lon lat',

Then it should interpret the projection correctly. I agree that the error message was not clear.

raonunes commented 2 years ago

Hi Peter, Thank you so much for your help! Now with the projection information the shipping emissions were read. The information below may be useful to someone...

Emis_sourceFiles(8)%filename = 'DataDir/FMIGlobShip2015mon.nc', Emis_sourceFiles(8)%projection='lon lat', Emis_sourceFiles(8)%periodicity='monthly', Emis_sourceFiles(8)%source(8)%varname='NOx', Emis_sourceFiles(8)%source(8)%species='nox', Emis_sourceFiles(8)%source(8)%sector=8, Emis_sourceFiles(8)%source(8)%units='kg',

One more question. As the file from FMI provide emissions of NOx, SOx, CO and particulate matter (divided in ash, EC, OC and SO4), in your opinion is correct read the particulate matter emissions as Emis_sourceFiles(8)%source(8)%species='pm25'?

gitpeterwind commented 2 years ago

Hi Rafael, For details you should ask the people that made those emissions. I do not see why you use the index 8 for sourceFiles and source; does that mean that you want to match pm25 with NOx emissions? For our use, we have put the definitions as attribute in the file, so that they do not need to be specified in the config. That give the netcdf file as described below. You can put those values in the config instead if you prefer. The particles have been matched to individual species; you can also put them into pm25 if you do not look at the speciated pm anyway. Maybe our ship emission expert @JanEiofJonson wants to add something.

ncdump -h FMIGlobShip2015mon_new.nc
netcdf FMIGlobShip2015mon_new {
dimensions:
    longitude = 4000 ;
    latitude = 1519 ;
    time = UNLIMITED ; // (12 currently)
variables:
    float longitude(longitude) ;
        longitude:standard_name = "longitude" ;
        longitude:long_name = "longitude" ;
        longitude:units = "degrees_east" ;
        longitude:axis = "X" ;
    float latitude(latitude) ;
        latitude:standard_name = "latitude" ;
        latitude:long_name = "latitude" ;
        latitude:units = "degrees_north" ;
        latitude:axis = "Y" ;
    double time(time) ;
        time:standard_name = "time" ;
        time:units = "days since 2015-1-1 00:00:00" ;
        time:calendar = "standard" ;
        time:axis = "T" ;
    float NOx(time, latitude, longitude) ;
        NOx:units = "kg" ;
        NOx:species = "nox" ;
        NOx:country_ISO = "INTSHIPS" ;
        NOx:sector = 8 ;
    float SOx(time, latitude, longitude) ;
        SOx:units = "kg" ;
        SOx:species = "SO2" ;
        SOx:country_ISO = "INTSHIPS" ;
        SOx:sector = 8 ;
    float SO4(time, latitude, longitude) ;
        SO4:units = "kg" ;
        SO4:species = "SO4" ;
        SO4:country_ISO = "INTSHIPS" ;
        SO4:sector = 8 ;
        SO4:factor = 0.666666f ;
    float Ash(time, latitude, longitude) ;
        Ash:units = "kg" ;
        Ash:species = "REMPPM25" ;
        Ash:country_ISO = "INTSHIPS" ;
        Ash:sector = 8 ;
    float CO(time, latitude, longitude) ;
        CO:units = "kg" ;
        CO:species = "co" ;
        CO:country_ISO = "INTSHIPS" ;
        CO:sector = 8 ;
    float OC(time, latitude, longitude) ;
        OC:units = "kg" ;
        OC:species = "POM_f_FFUEL" ;
        OC:country_ISO = "INTSHIPS" ;
        OC:sector = 8 ;
    float EC(time, latitude, longitude) ;
        EC:units = "kg" ;
        EC:species = "EC_f_FFUEL_new" ;
        EC:country_ISO = "INTSHIPS" ;
        EC:sector = 8 ;

// global attributes:
        :CDI = "Climate Data Interface version ?? (http://mpimet.mpg.de/cdi)" ;
        :Conventions = "CF-1.4" ;
        :history = "Tue Nov 27 15:52:36 2018: ncatted -a sector,EC,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:31 2018: ncatted -a units,EC,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:25 2018: ncatted -a country_ISO,EC,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:20 2018: ncatted -a species,EC,c,c,EC_f_FFUEL_new FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:15 2018: ncatted -a sector,OC,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:07 2018: ncatted -a units,OC,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:52:03 2018: ncatted -a country_ISO,OC,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:57 2018: ncatted -a species,OC,c,c,POM_f_FFUEL FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:51 2018: ncatted -a sector,CO,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:44 2018: ncatted -a units,CO,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:39 2018: ncatted -a country_ISO,CO,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:33 2018: ncatted -a species,CO,c,c,co FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:26 2018: ncatted -a sector,Ash,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:21 2018: ncatted -a units,Ash,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:14 2018: ncatted -a country_ISO,Ash,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:10 2018: ncatted -a species,Ash,c,c,REMPPM25 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:51:03 2018: ncatted -a factor,SO4,c,f,0.666666 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:59 2018: ncatted -a sector,SO4,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:51 2018: ncatted -a units,SO4,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:45 2018: ncatted -a country_ISO,SO4,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:40 2018: ncatted -a species,SO4,c,c,SO4 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:34 2018: ncatted -a sector,SOx,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:28 2018: ncatted -a units,SOx,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:23 2018: ncatted -a country_ISO,SOx,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:15 2018: ncatted -a species,SOx,c,c,SO2 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:09 2018: ncatted -a sector,NOx,c,l,8 FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:50:04 2018: ncatted -a units,NOx,m,c,kg FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:49:58 2018: ncatted -a country_ISO,NOx,c,c,INTSHIPS FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:49:52 2018: ncatted -a species,NOx,c,c,nox FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:49:47 2018: ncatted -a projection,global,c,c,lon lat FMIGlobShip2015mon_new.nc\n",
            "Tue Nov 27 15:49:41 2018: ncatted -a periodicity,global,c,c,monthly FMIGlobShip2015mon_new.nc\n",
            "Thu Jun 15 10:46:27 2017: cdo merge FMI_GlobNOx_mon2015.nc FMI_GlobSOx_mon2015.nc FMI_GlobSO4_mon2015.nc FMI_GlobAsh_mon2015.nc FMI_GlobCO_mon2015.nc FMI_GlobOC_mon2015.nc FMI_GlobEC_mon2015.nc FMIGlobShip2015\n",
            "Mon Jun 12 13:43:01 2017: cdo ymonsum /lustre/storeA/project/fou/kl/emep/FMI_shipemis/Global_2015/EC_allHeights_2015-01-01T00_2015-12-31T00.nc FMI_GlobEC_mon2015.nc\n",
            "model version: STEAM 3.3.0 (JAVA, edited 31.1.2017)" ;
        :institution = "Finnish Meteorological Institute" ;
        :conventions = "CF-1.0" ;
        :creator = "Lasse Johansson, email lasse.johansson@fmi.fi" ;
        :creation_time = "2017-06-07 01:26:00+0:00Z" ;
        :references = "Jalkanen, J.-P. ,Johansson, L., et al. 2012. Extension of an assessment model of ship traffic exhaust emissions for particulate matter and carbon monoxide" ;
        :title = "modelled shipping exhaust emissions and statistics in WorldPool_CUSTOMaccording to STEAM model" ;
        :info = "emission values describe emissions released at stack height between 0 and 100." ;
        :CDO = "Climate Data Operators version 1.7.0 (http://mpimet.mpg.de/cdo)" ;
        :periodicity = "monthly" ;
        :projection = "lon lat" ;