[ncl-talk] Error subscript mjoclivar_14 : Dimension sizes of left hand side and right hand side of assignment do not match
reza tisa
rezatisa1 at gmail.com
Mon Dec 30 04:12:21 MST 2019
It works! Thank you so much Mr.Dave. May you blessed with good health
and happiness
Pada tanggal Sen, 30 Des 2019 pukul 16.43 Dave Allured - NOAA Affiliate <
dave.allured at noaa.gov> menulis:
> Those array summaries are helpful, thanks. It looks like the original
> program assumed that all three input files are on exactly the same grid.
> However, you can see that your U and V files have one extra longitude,
> compared to OLR. This caused the dimension error.
>
> You will need all three variables on the same grid because they are
> involved in common calculations, later in the program. Fortunately in this
> case, it is unusually easy to make U and V on (0...360) align to OLR on
> (0...357.5), because all the longitudes are exactly the same, except for
> the extra OLR longitude at 360. Simply remove the extra longitude by
> subsetting at the right places in the program.
>
> Here is one way to do it (untested). Use the reassignment operator *(:=)*
> to avoid conflicts with the preceding use of "work", then add a new line to
> subset the array to a conforming grid alignment. Repeat this for V as
> well as U.
>
> ncl 75> work = read_rename(f,"OLR_anom",iStrt,iLast,latS,latN) ;
> (time,lat,lon)
> ncl 76> OLR = dim_avg_n_Wrap(work, 1) ;
> (time,lon)
> ncl 77>
> dncl 78> f = addfile (diri+filu850 , "r")
> ncl 79> * work := read_rename(f,"U_anom",iStrt,iLast,latS,latN) ;
> (time,lat,lon)*
> ++++++ *work := work(:,:,{0:357.5})*
> ncl 80> U850 = dim_avg_n_Wrap(work, 1) ; (time,lon)
>
>
> On Mon, Dec 30, 2019 at 12:16 AM reza tisa <rezatisa1 at gmail.com> wrote:
>
>> This is what i got, but sorry i still dont get what should i do
>> Script mjoclivar_14:
>> https://drive.google.com/open?id=1UdrtSvNioUmbkL3xuwF_QZbRrkNlEfCr
>>
>> printVarSummary (work)
>> printVarSummary (read_rename(f,"U_anom",iStrt,iLast,latS,latN))
>>
>> Variable: work
>> Type: float
>> Total Size: 10939968 bytes
>> 2734992 values
>> Number of Dimensions: 3
>> Dimensions and sizes: [time | 1461] x [lat | 13] x [lon | 144]
>> Coordinates:
>> time: [1884648..1919688]
>> lat: [-15..15]
>> lon: [ 0..357.5]
>> Number Of Attributes: 3
>> units : W/m^2
>> long_name : Anomalies: Daily OLR
>> _FillValue : 32766
>>
>> Variable: unnamed (return)
>> Type: float
>> Total Size: 11015940 bytes
>> 2753985 values
>> Number of Dimensions: 3
>> Dimensions and sizes: [time | 1461] x [lat | 13] x [lon | 145]
>> Coordinates:
>> time: [ 0..2102400]
>> lat: [ -15.. 15]
>> lon: [ 0.. 360]
>> Number Of Attributes: 2
>> long_name : Anomalies from Daily Climatology
>> _FillValue : -9.99e+08
>> fatal:Dimension sizes of left hand side and right hand side of assignment
>> do not match
>> fatal:["Execute.c":8635]:Execute: Error occurred at or near line 82
>>
>>
>> ncl 74>
>> ncl 75> work = read_rename(f,"OLR_anom",iStrt,iLast,latS,latN)
>> ;(time,lat,lon)
>> ncl 76> OLR = dim_avg_n_Wrap(work, 1) ;
>> (time,lon)
>> ncl 77>
>> ncl 78> f = addfile (diri+filu850 , "r")
>> ncl 79> printVarSummary (work)
>> ncl 80> printVarSummary (read_rename(f,"U_anom",iStrt,iLast,latS,latN))
>> ncl 81>
>> ncl 82> work = read_rename(f,"U_anom",iStrt,iLast,latS,latN) ;
>> (time,lat,lon)
>> ncl 83> U850 = dim_avg_n_Wrap(work, 1) ; (time,lon)
>>
>>
>>
>> Pada tanggal Sen, 30 Des 2019 pukul 12.55 Dave Allured - NOAA Affiliate <
>> dave.allured at noaa.gov> menulis:
>>
>>> We need to show you how to debug, instead of just giving you the
>>> answer. Whenever you get this ...
>>>
>>> *"Dimension sizes of left hand side and right hand side of assignment do
>>> not match"*
>>>
>>> ... then you need to show printVarSummary of the left hand and right
>>> hand sides, NOT the original data. Here you would add two statements
>>> between lines 78 and 79, because the program breaks on line 79.
>>>
>>> printVarSummary (work)
>>> printVarSummary (read_rename(f,"U_anom",iStrt,iLast,latS,latN))
>>>
>>> Line 79 will work only if all dimensions are exactly the same size,
>>> between left and right. Now you will need to explain why one or more of
>>> the dimension sizes are different here.
>>>
>>> Note to others: There is more going on here than just "use the
>>> reassignment operator".
>>>
>>>
>>> On Sun, Dec 29, 2019 at 10:20 PM reza tisa via ncl-talk <
>>> ncl-talk at ucar.edu> wrote:
>>>
>>>> Hello NCL User, I really need help for doing mjoclivar_14.
>>>> I already success on doing mjoclivar_2 to get data anomalies for *OLR
>>>> and zonal wind* (uwnd 200 hPa & uwnd 850 hPa) for 2015-2018.
>>>> This is my data :
>>>> My mjoclivar_14 script :
>>>>
>>>> https://drive.google.com/open?id=0B6v1GPWVNcu7eGo0V0J0VTlpNmstYTFFVmJiVGpRTGdXdlBjOLR
>>>> anomalies
>>>> Original mjoclivar_14 script :
>>>> https://www.ncl.ucar.edu/Applications/Scripts/mjoclivar_14.ncl
>>>> OLR anomalies :
>>>> https://drive.google.com/open?id=1lgzfmmadfmXUWkUT1n8DAsTbvp0oQ-Fc
>>>> uwnd 200 anomalies :
>>>> https://drive.google.com/open?id=1Eb9a4VD96n8Wg9iDoRg7pOHr60tl9OWw
>>>> uwnd 850 anomalies :
>>>> https://drive.google.com/open?id=1PKpTYxGT5VAE6F5ydu0j89VHlRN7gC9p
>>>>
>>>> That anomalies data i use for running mjoclivar_14 . Then i got this
>>>> error.
>>>>
>>>> fatal:Dimension sizes of left hand side and right hand side of
>>>> assignment do not match
>>>> fatal:["Execute.c":8635]:Execute: Error occurred at or near *line 79*
>>>>
>>>> ....................
>>>> ;***********************************************************
>>>> ; Read anomalies
>>>> ;***********************************************************
>>>> ncl 75> work = read_rename(f,"OLR_anom",iStrt,iLast,latS,latN) ;
>>>> (time,lat,lon)
>>>> ncl 76> OLR = dim_avg_n_Wrap(work, 1) ;
>>>> (time,lon)
>>>> ncl 77>
>>>> dncl 78> f = addfile (diri+filu850 , "r")
>>>>
>>>> ncl 79> * work = read_rename(f,"U_anom",iStrt,iLast,latS,latN) ;
>>>> (time,lat,lon)*
>>>> ncl 80> U850 = dim_avg_n_Wrap(work, 1) ; (time,lon)
>>>> .....................
>>>>
>>>> This is my printVarSummary :
>>>> Variable *OLR_anom* :
>>>> ncl 5> printVarSummary(T)
>>>> Variable: T
>>>> Type: float
>>>> Total Size: 61432128 bytes
>>>> 15358032 values
>>>> Number of Dimensions: 3
>>>> Dimensions and sizes: [time | 1461] x [lat | 73] x [lon | 144]
>>>> Coordinates:
>>>> time: [1884648..1919688]
>>>> lat: [90..-90]
>>>> lon: [ 0..357.5]
>>>> Number Of Attributes: 3
>>>> _FillValue : 32766
>>>> long_name : Anomalies: Daily OLR
>>>> units : W/m^2
>>>>
>>>>
>>>> Variable *U_anom *(200 hPa) :
>>>> ncl 11> printVarSummary(T2)
>>>>
>>>> Variable: T2
>>>> Type: float
>>>> Total Size: 61858740 bytes
>>>> 15464685 values
>>>> Number of Dimensions: 3
>>>> Dimensions and sizes: [time | 1461] x [lat | 73] x [lon | 145]
>>>> Coordinates:
>>>> time: [ 0..2102400]
>>>> lat: [ -90.. 90]
>>>> lon: [ 0.. 360]
>>>> Number Of Attributes: 2
>>>> _FillValue : -9.99e+08
>>>> long_name : Anomalies from Daily Climatology
>>>>
>>>> Variable *U_anom* (850 hPa) :
>>>> ncl 15> printVarSummary(T3)
>>>>
>>>> Variable: T3
>>>> Type: float
>>>> Total Size: 61858740 bytes
>>>> 15464685 values
>>>> Number of Dimensions: 3
>>>> Dimensions and sizes: [time | 1461] x [lat | 73] x [lon | 145]
>>>> Coordinates:
>>>> time: [ 0..2102400]
>>>> lat: [ -90.. 90]
>>>> lon: [ 0.. 360]
>>>> Number Of Attributes: 2
>>>> _FillValue : -9.99e+08
>>>> long_name : Anomalies from Daily Climatology
>>>>
>>>> Huge thanks for anybody can make this work, really need help this for
>>>> my mini thesis. Thank you
>>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20191230/c6596ccc/attachment.html>
More information about the ncl-talk
mailing list