This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hello, and thanks for reaching out! If you adapt your originally-provided script (without the loops) per the previous response, you won't need to construct this loop, and the code should run quickly. If you prefer to perform the calculations in this way, your error appears to come from the following: you've created your 2-d arrays to loop over and place your LCL pressure and temperature into, but haven't told python where in these arrays you should place each individual `mpcalc.lcl` output (lclp, lclt) like you have for the LCL height `mpcalc.pressure_to_height_std` calculation output (lclh). Be sure to check out your array indexing carefully when you construct loops like this, especially nested ones! I hope this helps, and if not please don't hesitate to follow up! All the best, Drew > I tried the mask code suggested but now I got this: > ValueError: setting an array element with a sequence. > when I run this code: > lclp=np.empty(((428,614))) > lclt=np.empty(((428,614))) > lclh=np.empty(((428,614))) > for i in range(428): > for j in range(614): > lclp, lclt = mpcalc.lcl(sfcp[i,j],sfct[i,j],dp[i,j]) > lclh[i,j]=mpcalc.pressure_to_height_std(lclp).to('feet') > Ticket Details =================== Ticket ID: MVS-634658 Department: Support Python Priority: Low Status: Closed =================== NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.