Using custom LAI stream for HARV NEON SP run: Job Failed with custom LAI time series

Makduma Badhan

Makduma Zahan Badhan
New Member
I am trying to run a CLM NEON single-point simulation at HARV using my own satellite-derived LAI time series instead of the default MODIS LAI (2001-2013). My goal is to prescribe observed year-to-year LAI variation using use_lai_streams = .true. I copied the original MODIS LAI stream file and replaced LAI_8 at the HARV grid cell with my observed HARV LAI time series (2000–2022), here I extended the time series than MODIS, keeping the rest of the structure unchanged.

However, my job failed with a PIO file open error, so I am wondering if I am doing something wrong in creating or configuring the stream file.

For reference: Case directory:

/glade/u/home/mbadhan/scratch/Spring2026L/LAI_Streams/NEON_cases/HARV_sp_test

Custom LAI stream file:

/glade/u/home/mbadhan/scratch/Spring2026L/LAI_Streams/MODIS/HIQ_LAI_0.5x0.5_HARV_LAI8_2000_2022.nc

Questions:

  1. Is modifying the original MODIS stream file (only LAI_8 at one grid cell) a valid approach for LAI streams?
  2. What should be the correct setup for: ( I know this more of a personal research question, I just want to make sure the job isn't crushing for inputting unrealistic setting.
model_year_align_lai
stream_year_first_lai
stream_year_last_lai

given my LAI file spans 2000–2022 and my simulation runs 2011–2024? My atmospheric forcing from 2018-2024.

  1. Do I need to modify or regenerate the mesh file, or can I safely use the default MODIS mesh file when only changing LAI values?
Any guidance on best practices for setting up custom LAI streams would be greatly appreciated. @oleson can you help me by having a look at my case? It will be appreciated.

Thank you!

Best,
Makduma
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
My guess about the pio error is that your streams file is netCDF-4. Try converting that to cdf5.
 

Makduma Badhan

Makduma Zahan Badhan
New Member
A quick update on this issue: after converting my custom LAI stream file to cdf5, the model was able to run successfully, so the earlier PIO file-open error seems to have been related to file format.


However, I am now facing a new issue: the simulated FPSN is essentially zero, and the output ELAI is also nearly zero throughout the simulation, even though the run completes successfully.


Briefly, the current setup is:


  • NEON single-point run at HARV
  • use_lai_streams = .true.
  • custom LAI stream file based on the original MODIS stream structure
  • I replaced LAI_8 at the HARV grid cell with my observed HARV LAI time series
  • the final stream file now spans 2018–2024
  • HARV surfdata shows PFT index 7 = 100%, so I assumed LAI_8 was the correct stream variable to modify
  • the values in the custom LAI_8 time series look reasonable (roughly ~0.6 to 5.1)

My forcing is available for 2018–2024, and I set:



use_lai_streams = .true.
model_year_align_lai = 2018
stream_year_first_lai = 2018
stream_year_last_lai = 2024



The model runs, but both:


  • FPSN ≈ 0
  • ELAI ≈ 0

At the same time, FSDS looks reasonable, so this does not appear to be a forcing-radiation problem.


I would like to ask:


  1. In SP mode, should use_lai_streams = .true. be sufficient to drive interannual prescribed LAI, or is there another requirement I may be missing?
  2. Is modifying only LAI_8 at the HARV grid cell the correct approach, given that HARV has natpft index 7 = 100% in surfdata?
  3. Is ELAI the right variable to diagnose whether the LAI stream is actually being used, or should I be checking another variable ?

If helpful, I can also share the relevant namelist settings. @oleson Can you help me finding out the issue? I have tried everything I could guess. But no luck!
 

oleson

Keith Oleson
CSEG and Liaisons
Staff member
1. I think that should be sufficient.
2. I thought that LAI_7 would correspond to natpft index 7. For example, I see valid LAI_1 data which wouldn't seem to make sense for natpft index 0 (bare ground). But I'm not positive, you'd need to check the code.
3. That should be fine, unless the vegatation is always buried by snow, which seems unlikely for HARV. You could also check TLAI.

I see you are starting the model in 2011, but the lai streams data starts in 2018. I'm not sure what happens in that case. You could try starting the model in 2018.

Also, have you just tried using the default lai streams file to see if that works? Maybe there is some unknown bug in this version of the model.
 

Makduma Badhan

Makduma Zahan Badhan
New Member
@oleson Thank you for the earlier suggestions. I wanted to provide another update.

The LAI stream started working after I updated LAI_7 instead of LAI_8, so it seems that LAI_7 corresponds to the HARV natpft index 7 in my case. I also tried starting the simulation in 2018 to match the starting year of the LAI stream, but the issue remains.

The new issue is that the simulated GPP is very low. I checked the prescribed LAI time series, and the stream itself looks correct. However, in the model output, both ELAI and TLAI are approximately half of the prescribed LAI values. This seems to be driving the low GPP.

As a comparison, I also ran the model using the default MODIS LAI stream. In that case, ELAI/TLAI match the prescribed LAI much more closely, and the GPP peak looks realistic.

So the current problem seems specific to my modified LAI stream: the model reads the seasonal pattern, but the magnitude of TLAI/ELAI is reduced by about half. I am wondering if there may be some scaling, normalization, or stream-file formatting issue that causes CLM to interpret my LAI values differently than the default MODIS stream. Can you help me by looking at my case that located in: u/home/mbadhan/scratch/Spring2026L/LAI_Streams/NEON_cases/HARV_sp_test

It will be very helpful if you kindly give me some suggestion as I again stuck here.
 

slevis

Moderator
Staff member
I see that your LAI stream
/glade/u/home/mbadhan/scratch/Spring2026L/LAI_Streams/MODIS/HIQ_LAI_0.5x0.5_HARV_LAI7_2018_2024_cdf5.nc
has lat = 360 and lon =720. This likely means that the LAI used at HARV is an interpolation of a few half degree gridcells that overlap with the simulation's HARV gridcell. If so, then your custom LAI in the stream file may be getting interpolated with values that you didn't intend to use. So here's a thought:

1) How about inserting your custom LAI values in all of the file's gridcells instead of in a single gridcell? Then at least you will know that the model is not mixing yours with other values.

2) Then I'm also curious to see a plot of the two stream timeseries (at the gridcell closest to HARV), and a similar plot of the TLAI timeseries from your default case versus your custom case.
 
Back
Top