[ncl-talk] fatal error: "Assignment not supported for left-hand type"

franz f.trotta at sincem.unibo.it
Thu Jul 24 13:53:15 MDT 2014


I tried to change the code how you said, now this part of the code look 
like:

17271
17272
17273    print(nmod)
17274    mintempCstring = new(nmod,string,"")
17275    maxtempCstring = new(nmod,string,"")
17276
17277    if(lplot_outModSurfC) then
17278
17279       if (lplot_outModSurfC_temp) then
17280
17281          print("")
17282          print("     ### Plot SURF-TEMP")
17283          system("cd " + path_exp_figure_comp+"/outNemo/temp ; rm 
temp*.png")
17284
17285          tempC_diff(0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1) = 
\
17286                     
tempC(1,0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1) - \
17287                     
tempC(0,0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1)
17288
17289          colorsMap = "rainbow"
17290          namefile  = "tempC_xy"
17291          titleplot = "Temperature"
17292          label     = " "
17293          ilev      = 0
17294          itime     = 0
17295          printVarSummary(LeftStringC)
17296          print(mintempCstring)
17297          print(maxtempCstring)
17298          do imod=0,1
17299              print("imod="+imod)
17300              ;LeftStringC(imod) = 
"z("+ilev+")="+depth1dtC_surf(imod,ilev)+"m  range=["+ \
17301              ;                    
sprintf("%0.2f",min(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+","+ \
17302              ;                    
sprintf("%0.2f",max(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+"]"
17303              mintempCstring(imod) = 
sprintf("%0.2f",min(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))
17304              maxtempCstring(imod) = 
sprintf("%0.2f",max(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))
17305              LeftStringC(imod) = 
"z("+ilev+")="+depth1dtC_surf(imod,ilev)+"m  range=["+ \
17306                                  
mintempCstring(imod)+","+maxtempCstring(imod)+"]"
17307          end do




but there is still the ERROR "Assignment not supported for left-hand 
type"
this time al line 17274:



Variable: nmod
Type: integer
Total Size: 4 bytes
             1 values
Number of Dimensions: 1
Dimensions and sizes:	[1]
Coordinates:
(0)	2
fatal:Assignment not supported for left-hand type
fatal:["Execute.c":8128]:Execute: Error occurred at or near line 17274 
in file main.ncl

./run_surf.sh: line 65: 78002 Segmentation fault: 11  ncl 
'CONFIG='\"${CONFIG}\" 'EXPERIM='\"${EXPERIM}\" 'DATE00='\"${DATE00}\" 
'path_base='\"${BASE_DIR}\" main.ncl
sincem29:experiments franz$


How can it be? Now I'm confuse.

If I remove the code line: 17298 - 17307 the program is ok.


thanks
Francesco
On 24-07-2014 19:20, Wei Huang wrote:
> Franz,
> 
>  Try change your code line: 17299 - 17301 from:
> 
> LeftStringC(imod) = "z("+ilev+")="+depth1dtC_surf(imod,ilev)+"m
>  range=["+
> sprintf("%0.2f",min(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+","+
> 
> sprintf("%0.2f",max(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+"]"
> 
> 
> to:
> 
> mintempCstring =
> sprintf("%0.2f",min(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))
>  maxtempCstring =
> sprintf("%0.2f",max(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))
> LeftStringC(imod) = "z("+ilev+")="+depth1dtC_surf(imod,ilev)+"m
>  range=["+
>                     mintempCstring+","+
>                     maxtempCstring+"]"
> 
> and let us see if the error persist.
> 
>  Wei
> 
> ================================================
> 1850 Table Mesa Dr.
> Boulder, CO 80307
> Phone: 303-497-8924
> 
> On Thu, Jul 24, 2014 at 11:05 AM, franz <f.trotta at sincem.unibo.it>
> wrote:
> 
>> Dear ncl-team
>>     I'm using the ncl 6.1.2 on imac Darwin 64bit
>>     I got this fatal error: "Assignment not supported for
>> left-hand type"
>>     and I don't understand the source of this error.
>> 
>>    Below there is part of my code (where I think NCL does not
>> like)
>>    (I putted printVarSummary(...) to shows the info of the
>> suspected
>> variables)
>> 
>> |
>> |
>> 228    nmod = 2
>> |
>> |
>> 1371    LeftStringC = new(2,string)
>> |
>> |
>> |
>> 1428    do imod=0,nmod-1
>> 1429
>> |
>> |
>> |
>> 16321
>> 16322    end do ;imod
>> 
>> |
>> |
>> |
>> 17276   if(lplot_outModSurfC) then
>> 17277
>> 17278       if (lplot_outModSurfC_temp) then
>> 17279
>> 17280          print("")
>> 17281          print("     ### Plot SURF-TEMP")
>> 17282          system("cd " +
>> path_exp_figure_comp+"/outNemo/temp ; rm
>> temp*.png")
>> 17283
>> 17284        
>>  tempC_diff(0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1) =
>> 
>> 17285
>> tempC(1,0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1) -
>> 17286
>> tempC(0,0:nt_max-1,0:nz_max-1,0:ny_max-1,0:nx_max-1)
>> 17287
>> 17288          colorsMap = "rainbow"
>> 17289          namefile  = "tempC_xy"
>> 17290          titleplot = "Temperature"
>> 17291          label     = " "
>> 17292          ilev      = 0
>> 17293          itime     = 0
>> 17294          printVarSummary(LeftStringC)
>> 17295          printVarSummary(depth1dtC_surf)
>> 17296          printVarSummary(tempC)
>> 17297          do imod=0,1
>> 17298              print("imod="+imod)
>> 17299              LeftStringC(imod) =
>> "z("+ilev+")="+depth1dtC_surf(imod,ilev)+"m  range=["+
>> 17300
>> 
> sprintf("%0.2f",min(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+","+
>> 
>> 17301
>> 
> sprintf("%0.2f",max(tempC(imod,itime,ilev,0:ny(imod)-1,0:nx(imod)-1)))+"]"
>> 17302          end do
>> 17303          minLevelVal  = minTemp
>> 17304          maxLevelVal  = maxTemp
>> 17305          levelSpacing = dTemp
>> 17306          diffLevVal(0) = minTemp_diff
>> 17307          diffLevVal(1) = maxTemp_diff
>> 17308          diffLevVal(2) = dTemp_diff
>> 17309          if(ltext) then print("     ### "+titleplot+"
>> "+label+"
>> ilev="+sprinti("%0.3i", ilev)) end if
>> 17310
>> 
> mplot_2Dfield_xy(namefile,typefile,inforun(0),colorsMap,titleplot,label,LeftStringC(0:1),
>> 
>> 17311                           nx(0:1),ny(0:1),
>> 17312                          
>> lon2dtC_surf(0:1,0:ny_max-1,0:nx_max-1),
>> 
>> 17313                          
>> lat2dtC_surf(0:1,0:ny_max-1,0:nx_max-1),
>> 
>> 17314
>> tempC(0:1,itime,ilev,0:ny_max-1,0:nx_max-1),
>> 17315
>> tempC_diff(itime,ilev,0:ny_max-1,0:nx_max-1),
>> 17316                          
>> minLatF,maxLatF,minLonF,maxLonF,
>> 17317                          
>> minLevelVal,maxLevelVal,levelSpacing,
>> 17318
>> diffLevVal(0),diffLevVal(1),diffLevVal(2))
>> 
>> |
>> |
>> |
>> 
>> end the ERROR message is:
>> 
>> (0)
>> (0)          ### Plot SURF-TEMP
>> rm: temp*.png: No such file or directory
>> 
>> Variable: LeftStringC
>> Type: string
>> Total Size: 16 bytes
>>              2 values
>> Number of Dimensions: 1
>> Dimensions and sizes:   [2]
>> Coordinates:
>> Number Of Attributes: 1
>>    _FillValue : missing
>> 
>> Variable: depth1dtC_surf
>> Type: float
>> Total Size: 800 bytes
>>              200 values
>> Number of Dimensions: 2
>> Dimensions and sizes:   [2] x [deptht | 100]
>> Coordinates:
>>              deptht: [0.5031146..1787.05]
>> Number Of Attributes: 8
>>    axis :       Z
>>    positive :   down
>>    standard_name :      depth
>>    long_name :  depth
>>    units :      m
>>    valid_min :  0.5031146
>>    valid_max :  1787.05
>>    _FillValue : 9.96921e+36
>> 
>> Variable: tempC
>> Type: float
>> Total Size: 892800000 bytes
>>              223200000 values
>> Number of Dimensions: 5
>> Dimensions and sizes:   [2] x [time_counter | 72] x [deptht | 100]
>> x [y |
>> 100] x [x | 155]
>> Coordinates:
>>              time_counter: [3600..259200]
>>              deptht: [0.5031146..1787.05]
>>              y: [41.5..43.5625]
>>              x: [9.35..12.55833]
>> Number Of Attributes: 8
>>    missing_value :      1e+20
>>    coordinates :        time depth lat lon
>>    units :      degC
>>    long_name :  temperature
>>    standard_name :      sea_water_potential_temperature
>>    valid_min :  8.159986
>>    valid_max :  14.30364
>>    _FillValue : 1e+20
>> fatal:Assignment not supported for left-hand type
>> fatal:["Execute.c":8128]:Execute: Error occurred at or near line
>> 17302
>> in file main.ncl
>> 
>> thanks
>> Francesco Trotta
>> 
>> _______________________________________________
>> ncl-talk mailing list
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk [1]
> 
> 
> 
> Links:
> ------
> [1] http://mailman.ucar.edu/mailman/listinfo/ncl-talk


More information about the ncl-talk mailing list