Unable to reproduce interpolation onto trajectory
Posted: March 22nd, 2021, 3:05 pm
I am working with CESM/CAM output data on hybrid levels, converted to ARL format with MeteoInfo (and hopefully soon cesm2arl) and run through the trajectory model. Ultimately I would like to take the trajectory location output (time/lat/lon/height or pressure) and use it to reference other variables from the original CAM files to get values for i.e. humidity, longwave forcing, cloud fraction, etc. along each trajectory. The issue is that I can't reproduce the ambient temperature along the trajectory; I have tm_tamb=1 in SETUP.CFG, so that the variable AIR_TEMP is output in my trajectory files, but when I take the trajectory time, lat, lon, and PRESSURE from the trajectory output and attempt to interpolate the original temperature data from CAM onto the air parcel location, I get differences from AIR_TEMP as large as 5-10 K in some places. I tried to reproduce what I think HYSPLIT is doing internally -- linear interpolation in the horizontal lat/lon on hybrid levels, then convert to pressure levels and linearly interpolate in pressure or log(pressure) in the vertical (no time interpolation, as trajectory time cadence matches my data) -- but can't reproduce AIR_TEMP. Can someone either 1) explain how HYSPLIT interpolates input data onto the trajectory location in more detail or 2) point me to the corresponding place in the source code?