I am using CMAQv5.4 to run DDM for a simulation but the program fails to generate the ASENS file the log files show the program is done successfully. I am using SAPRC07 and I have only one emission species in sensinput.dat for testing. The ASENS file is created but only has 11k which must be something wrong. Other than that, the simulation seems done successfully, ACONC, CONC and SENGRID are in normal size and the variables in them are reasonable. Looking forward to help.
It is unusual that the program completes and creates a SENGRID files, but not the ASENS files. Does SENGRID have reasonable values?
Another thing to check would be that your GRIDDED_BEIS actually has NO species values in it. Or run a different sensitivity parameter - maybe one to total NO like this (but with proper formatting):
Yes, I think SENGRID has reasonable values (not infinity or zero). And I had tried different options in seninput.dat, including single species (e.g., NO, SO) and all emissions. All test run come up with the same issue.
I have no idea why you are experiencing this, honestly. The last thing to check would be to see if you are removing the old output files completely and to check that you are writing into a completely clean and empty directory.
Not sure if it is correct, I tried to use medium memory IOAPI and still got the same error. I tried this modification and now the ASENS file seems successfully generated (regular size).
Hi Sergey,
I have got the same error when I run the latest CMAQ 5.4-HDDM(compiled in September 2023). I have limited the output species, used large IOAPI and online MEGAN.
Here’s my sensinput.dat and the error: sensinput.txt (424 Bytes)
>>--->> WARNING in subroutine WRITE3
Variable O3_ENO not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_ENO to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_2EN not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_2EN to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_EVA not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_EVA to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_2EA not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_2EA to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_EVB not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_EVB to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_2EB not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_2EB to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine WRITE3
Variable O3_ENV not in file: A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
>>--->> WARNING in subroutine PWRGRDD on PE 000
Could not write O3_ENV to file A_SENS_1
M3WARN: DTBUF 0:00:00 Sept. 20, 2021(2021263:000000)
And I tried to run CMAQ5.4 HDDM in the former version (compiled in March 2023) and output the normal ASENS file.
This looks like you have an previously created file that exists in your output directory and the code is trying to add to it. I would make sure that you are writing to a completely empty output directory as the first test.
Please, attach the rest of the log file. Or look for text similar to:
Could not open A_SENS_1 file for update - try to open new
Avg Sens File Header Description:
DDM3D Sensitivity file output
Averaged over the synchronization time steps
Hi, sergey,I installed CMAQ5.4 and opened DDM in the CCTM module. Strangely, no DDM-related files were generated, only a part of files were generated. What is the matter with this situation
As shown in the comments of the screenshot you posted (“#Additionally requires for CCTM to be compiled for DDM-3D simulations”), DDM-3D needs to be enabled when you compile CCTM, it is not sufficient to only enable CTM_DDM3D in the run script.
Step 7 of the DDM tutorial shows which line in the bldit_cctm.csh script needs to be uncommented to compile CCTM with DDM-3D enabled.
If you do not define any region-specific sensitivity parameters in your sensinput.dat control file, you will not need to define a CMAQ_MASKS file in your CCTM run script and you then also should not uncomment any lines referring to CMAQ_MASKS in the &Desid_RegionDef section of CMAQ_Control_DESID.nml
If you do want to specify sensitivity parameters for specific regions, you will need to set these variables and point them to a corresponding file defining these regions. Region files used in DESID emissions scaling as well as DDM-3D and ISAM are described in Appendix B.
You can also search this forum for previous threads discussing approaches to create such files by using a search term of “mask” or “region”, e.g. here or here
First of all, thank you very much for your professional reply. Now I use the DDM module of CMAQ to invert gridded emissions, and finally I want to obtain the sensitivity analysis of grid to grid. In this case, is it necessary to turn on this setting? Now I have turned off this setting, but the operation still reports errors: The ERROR is *** ERROR ABORT in subroutine DESID_INIT_REGIO on PE 029
User specified DDM3D region - PA - not found in available emissions regions. Check sensinput.dat file
PM3EXIT: DTBUF 0:00:01 Jan. 1, -000
Date and time 0:00:01 Jan. 1, -000 ( 1:000001)
(END)
This error is not reported without DDM. This error is reported with DDM module
If you do not want any region-specific sensitivity parameters, you should not have any “REGION” entry in the sensinput.dat file specified in your run script. The structure of sensinput.dat is described here as well as the bottom of the example sensinput.dat file distributed with the code and notes under item 6 that the REGION section is optional.
I am guessing you are working off of the example sensinput.dat file distributed with the CMAQ benchmark case. That example does define two-region specific parameters, one for region “PA” (the state of Pennsylvania) and one for region “NJ” (the state of New Jersey).
To adapt this example to your case, you will have to remove the lines
REGION
PA
REGION
NJ
If you do want to define regions, you’ll have to refer to them by the region label names defined in CMAQ_Control_DESID.nml, mapped from the variable names in your MASK file.
Thank you again for your professional answer. At present, delete it or report an ERROR: *** ERROR ABORT in subroutine DESID_INIT_REGIO on PE 031
User specified DDM3D region - PA - not found in available emissions regions. Check sensinput.dat file
PM3EXIT: DTBUF 0:00:01 Jan. 1, -000
Date and time 0:00:01 Jan. 1, -000 ( 1:000001)
(END)
Thank you again for your professional answer. At present, delete it or report an ERROR: *** ERROR ABORT in subroutine DESID_INIT_REGIO on PE 031
User specified DDM3D region - PA - not found in available emissions regions. Check sensinput.dat file
PM3EXIT: DTBUF 0:00:01 Jan. 1, -000
Date and time 0:00:01 Jan. 1, -000 ( 1:000001)
(END), I want to identify the concentration of HCHO (formaldehyde) column by VOC emission and NO2 concentration by NOX emission.The current sensinput.2018_12NE3.dat was modified by me as follows:
Could you please post your actual sensinput file and your log file with the error message(s) as attachments? Including the error messages in the text of your post and looking at multiple screenshots without being certain of their order makes it harder to debug the problem.