this is the code:
************************************
#!/usr/bin/perl

use NetCDF;

if(@ARGV == 6){
    print "ARGV ERROR \n";
    print "date hhmm Noise Radius AZ1 AZ2\n";
    exit(1);
}
$date   = $ARGV[0];
$hhmn   = $ARGV[1];
$opt_Noise = $ARGV[2];
$radius = $ARGV[3];
$AZ1    = $ARGV[4];
$AZ2    = $ARGV[5];


$year = 2011;
$radar = "EWR";
$work    = "/work/radar/radar_mkCAPPI/volume/Husein_20110221";

$unfold  = "/work/radar/radar_mkCAPPI/volume/${radar}_unfold/${year}";
system("ls ${work}/${date}${hhmn}/${file} > list");

open(FP,"list");


close(FP);



open(FP,"list");

while(defined($file = <FP>)){
    chomp($file);
    $orgF = "${work}/${file}";
    system("mkdir -p ${unfold}");
    print "$orgF \n";

#######  FILE NAME CHANGE for minimum time ###########
    system("cp $orgF test.nc");
    $ncid = NetCDF::open("test.nc",WRITE);
    $varid= NetCDF::varid($ncid,"M_time");
    $dimid= NetCDF::dimid($ncid,"Rays");
    NetCDF::diminq($ncid,$dimid,$name,$RAY_NUM);
    @start = (0);
    @count = ($RAY_NUM);
    NetCDF::varget($ncid,$varid,\@start,\@count,\@UNIX_TIME);

    $min = time();
    for($i=0;$i<$RAY_NUM;$i++){
        if($min > $UNIX_TIME[$i]){
            $min = $UNIX_TIME[$i];
        }
    }
    ($sec,$min,$hh,$dd,$mm,$yy,$weak,$yday,$opt) = localtime($min);
    $yy+=1900;
    $mm+=1;
    
    $head = substr($file,0,2);
    $EL   = substr($file,15,3);
    $hh = sprintf("%02d",$hh);
    $dd = sprintf("%02d",$dd);
    $min = sprintf("%02d",$min);
    $sec = sprintf("%02d",$sec);
    $mm = sprintf("%02d",$mm);
    
    $file2 = "${head}${mm}${dd}${hh}${min}${sec}_EL${EL}.nc";
    $outF = "${unfold}/$file2";

############ CUT NOISE #####################
    if($opt_Noise eq "ON"){
        $varid= NetCDF::varid($ncid,"M_range_to_bin");
        $dimid= NetCDF::dimid($ncid,"Bins");
        NetCDF::diminq($ncid,$dimid,$name,$BIN_NUM);
        @start = (0);
        @count = ($BIN_NUM);
        NetCDF::varget($ncid,$varid,\@start,\@count,\@RANGE);

        $varid= NetCDF::varid($ncid,"M_az");
        @start = (0);
        @count = ($RAY_NUM);
        NetCDF::varget($ncid,$varid,\@start,\@count,\@AZ);

        $varid= NetCDF::varid($ncid,"M_ref");
        @start = (0,0);
        @count = ($RAY_NUM,$BIN_NUM);
        NetCDF::varget($ncid,$varid,\@start,\@count,\@REF);
        NetCDF::attget($ncid,$varid,"scale_factor",\@scale_factor);
        NetCDF::attget($ncid,$varid,"add_offset",\@add_offset);
        NetCDF::attget($ncid,$varid,"missing_value",\@missing_value);
        print "$missing_value[0] \n";

        for($j=0;$j<$RAY_NUM;$j++){
            for($i=0;$i<$BIN_NUM;$i++){
                if($RANGE[$i] < $radius * 1000){
                    $REF[$j*$BIN_NUM+$i]= $missing_value[0];
                }  
                
                if($AZ[$j] > $AZ1 && $AZ[$j] < $AZ2 ){
                    $REF[$j*$BIN_NUM+$i]= $missing_value[0];
                }  

            }
        }
        
        NetCDF::varput($ncid,$varid,\@start,\@count,\@REF);
        
        $varid= NetCDF::varid($ncid,"M_vel");
        NetCDF::varget($ncid,$varid,\@start,\@count,\@VEL);
        NetCDF::attget($ncid,$varid,"scale_factor",\@scale_factor);
        NetCDF::attget($ncid,$varid,"add_offset",\@add_offset);
        print "$scale_factor[0] $add_offset[0] \n";
        
        for($j=0;$j<$RAY_NUM;$j++){
            for($i=0;$i<$BIN_NUM;$i++){
                if($RANGE[$i] < $radius * 1000){
                    $VEL[$j*$BIN_NUM+$i]= $missing_value[0];
                }  

                if($AZ[$j] > $AZ1 && $AZ[$j] < $AZ2 ){
                    $VEL[$j*$BIN_NUM+$i]= $missing_value[0];
                }  

            }
        }

        NetCDF::varput($ncid,$varid,\@start,\@count,\@VEL);
        NetCDF::close($ncid);

    }
    
    if($opt_Noise eq "ON"){




        system("rm -f test.nc dummy");
    }else{

        if($orgF =~ /AZ\d\d\d/){
            next;
        }




}



********************************************************
regards,
Indra


----- Original Message -----
From: "Parag Kalra" <paragka...@gmail.com>
To: ind...@students.itb.ac.id
Cc: beginners@perl.org
Sent: Thursday, March 17, 2011 1:49:15 AM
Subject: Re: MRF-ERROR: Is a directory




On Wed, Mar 16, 2011 at 11:44 AM, < ind...@students.itb.ac.id > wrote: 


how to overcome this error : 

MRF-ERROR: Is a directory 




Please post the entire code. 


~Parag 

-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to