2014年8月31日 星期日

[Matla] 羅馬符號對照表

[Matlab] 畫圖指令 (座標軸設定)

%重設目前X軸參數之範圍  
set(gca,'XTick',-180:90:180); 
 
%重設X軸之內標
set(gca,'XTickLabel',{'-180','-90','0','90','180'})
 
%設定x軸的label
xlabel('座標軸單位','fontsize',20);
 
%設定圖檔title
title=('圖檔title','fontsize',20)
 
%設定legend及
legend('t1',t2')

%設定legend位置和大小
temp=legend('t1','t2',4);
%4表示把legend放在圖的右下角,其他代號如下

       0 = 自動調整到最好位置
       1 = 右上角(內定值)
       2 = 左上角
       3 = 左下角
       4 = 右下角
      -1 =圖案的右邊
 
 set(temp,'fontsize',8,'position',[a,b,c,d);
%把legend字體設為8,且其位置座標為(a,b,c,d) 
 
 legend('boxoff'); %不畫legend的外框

% 在legend中,讓字體能夠對齊 (需挑選所有字元都是等寬度的字體)
h = lengend('show')
set(h,'FontName','FixedWidth')

 

[Matlab] Useful Command

[Matlab] Useful Command

PBS 指令


** Setting in the Shell script **

#PBS -N   XXX                           !  Job Name
#PBS -o    XXX.o                       !  Output message
#PBS -e     XXX.e                       !  Error message
#PBS -l nodes=4:ppn=4    !  Use 4 nodes and each node has 4 cpu(ppn)
#PBS -u chichien              !  User name




** The commands under linux **


qsub job_name.sh  ==>  run the job by shell
qdel  job_ID             ==>   cancel the job
qrun job_ID              ==>  force the job to run
qstat                          ==>  get the jobs information

Shell script 的陣列(array)處理

在shell中,同樣可以使用陣列來記憶變數。

假設需要儲存三筆溫度時,若不使用陣列處理,那就只能這樣寫:

#!/bin/ bash
temp1= 35
temp2= 42
temp3= 22
 
echo ${temp1}
echo ${temp2}
echo ${temp3}
但若是使用陣列處裡的話:
#!/bin/bash
temp=(35 42 22)

for ((i=0; i<${#temp[@]; i++})); do 
      echo ${ temp[$i] }
done
迴圈的意思為:
令i為迴圈的index,讓i=0到 array的總數(也就是 ${#temp[@] )
${temp [0] }代表array的第一個變數值,也就是35。

Shell 常用指令

取得目前主機時間並輸出


    #! /usr/sh
     time= $(date " +%Y/%m%d %H:%M:%S")  # to obtain the system time

     echo ${time} 


在資料夾中依filelist 的順序將其命名為filename
 for filename in filelist ; do
       statements
done
Example:

for wrfbdy in `ls wrfbdy* |sort `; do    #1
    echo $wrfbdy                                #2
    dd=`echo $wrfbdy |cut -d '_' -f 2`   #3
    hh=`echo $wrfbdy |cut -d '_' -f 3`
    echo $dd ' ' $hh
done 
#1:filelist=  `ls wrfbdy* |sort`  ,
        將資料夾中所有以wrfbdy為檔頭的檔案依序排好( | sort ),
        並且在迴圈中,以"wrfbdy"稱呼該檔名。 (迴圈次數由檔案數目決定)
#2:回傳 變數值
#3:擷取變數中的訊息。 
       | cut -d '_' -f 2  ==> 將  $wrfbdy 此一字串變數以 "_"符號分隔,
       並取出第二個空間(區塊)中的字串,導向為dd 此變數。 
       同理,變數hh則是為第三空間中的變數。
       如:

wrfbdy=wrfbdy_149988_0_1
 dd=`echo $wrfbdy |cut -d '_' -f 2`
dd= 149988

以 "ls "指令顯示目錄與檔案數目
顯示目錄數目:
ls -al | grep "^d" | awk 'END {print "Number of directories: " NR}'

顯示檔案數目:
ls -al | grep "^_" | awk 'END {print "Number of files: " NR}'

Example:

nt= `ls -al |grep "ens" |awk 'END {print NR}`
echo ' number=' ${nt}
如此就會將所在位置底下,檔頭為ens的的目錄數目回傳為 "nt'






[Linux] Sed 與 awk 指令

Sed 與 awk兩者都是管線命令。但sed常用於一整行的處理,awk則傾向於在一行當中,分成數個區塊處理。

sed

sed 可將資料進行取代、刪除或是擷取特定行。

sed [-nefi] [動作]

-n  :使用安靜模式。一般來說,所有的資料都會被輸出至螢幕上。
         而在此模式下,只有經過sed處理後的那一行才會被列出來。
-e  :直接在指令列上進行sed的編輯。
-f   :直接將sed的動作寫入一個檔案內。
         如-f filename 就是可直接執行filename內的所記錄的sed動作。
-i   :直接修改讀取的檔案內容,而不由螢幕輸出。

動作說明:n1,n2 function
未必會存在,n1、n2一般代表選擇進行動作的行數。
例如動作只在10~20行間進行,則可寫成: 10,20 [funciton]

而funciton 的動作如下:
a :新增。  在a的後面可接字串,而這些字串會在新的一行出現
                     (目前的下一行)
c :取代。  在c的後面可接字串,而這些字串可取代在n1、n2之間的行。
d :刪除。  因為是刪除,後面通常不接東西。
i  : 插入。 可接字串,且字串會在新一行出現(目前的上一行)。
s : 取代。 可直接進行取代。
p : 列印。 可將選取的資料顯示於螢幕上,通常會搭配參數 -n 一起使用。
                    若不加上參數 -n ,則代表將選取資料重複顯示一次。
Example:
nl /etc/passwd | sed '2,5d'
此行是將/etc/passwd 的內容列出,並將第2行至第5行刪除。
須注意在sed後所接的指令須以單引號包住。

nl /etc/passwd | sed '2,$d'
此行則是表示將第二行至最後一行的內容刪除。
$ 表示最後一行。

nl /etc/passwd | sed '2a Drink tea or ....\ drink beer? '
此行表示在第2行後新增內容。(在第二行的下一行)
而在此則是加入兩行文字。以 " \ " 表示換行。

nl /etc/passwd | sed '2,5c No 2-5 number'
此行表示在第2行至第5行間以後面字串取代。
因此第二行到第五行的內容均會被刪除,
而以 "No 2-5 number" 這一行文字取代。
(若原本有五行的內容,如此取代後將只會剩下第1行與新增的那行。)

nl /etc/passwd | sed -n '5,7p'
此行表示將5-7行顯示於螢幕上,並且以安靜模式顯示。
因此在螢幕上只會出現5-7行。
若僅輸入 sed '5-7p',則會將5-7行重複輸出一次。
(因此假設原始資料有10行,且5-7行被重複輸出,故共有13行)
透過導出符號,即可將挑選出的資料儲存成新檔案。

sed 's/欲取代的字串/新的字串/g'
如此可進行取代。

cat /etc/man.config | grep 'MAN' | sed 's/#.*$//g' | sed '/^$/d'
此行首先先將/etc/man.config中含有MAN字串的行取出。
再將含有#的註解行以空白取代。
最後在搜尋空白行(^$,字首為$的行),並刪除之。

sed -i '$a # This is test' regular.txt
此行可在文字檔regular.txt中,直接進行修改。
由於 $ 代表最後一行,而a的動作是新增
因此表示在此文字檔的最後一行新增輸入文字。



音樂格式介紹.比較

MP3
  MP3的全稱是Moving Picture Experts Group Audio Layer III。簡單的說,MP3就是一種音頻壓縮技術,由於這種壓縮模式的全稱叫MPEG Audio Layer3,所以人們把它簡稱為MP3MP3是利用 MPEG Audio Layer 3 的技術,將音樂以1:10 甚至 1:12 的壓縮率,壓縮成容量較小的file,換句話說,能夠在音質丟失很小的情況下把文件壓縮到更小的程度。而且還非常好的保持了原來的音質。正是因為MP3體積小,音質高的特點使得MP3格式幾乎成為網上音樂的代名詞。每分鐘音樂的MP3格式只有1MB左右大小,這樣每首歌的大小只有3-4兆位元組。使用MP3播放器對MP3文件進行實時的解壓縮(解碼),這樣,高品性的MP3音樂就播放出來了。 
補充︰最高比特率320K高頻部分一刀切是他的缺點。音質不高﹗

WMA

  WMA的全稱是Windows Media Audio,是微軟力推的一種音頻格式。WMA格式是以減少數據流量但保持音質的方法來達到更高的壓縮率目的,其壓縮率一般可以達到1:18,生成的文件大小只有相應MP3文件的一半。這對只裝配32M的機型來說是相當重要的,支持了WMARA格式,意味著32M的空間在無形中擴大了2倍。此外,WMA還可以透過DRMDigital Rights Management)方案加入防止拷貝,或者加入限制播放時間和播放次數,甚至是播放機器的限制,可有力地防止盜版。 
補充︰128kbpswma最優壓縮比,128kbps wma=192kbps mp3

WAV

  WAV格式是微軟公司開發的一種聲音文件格式,也叫波形聲音文件,是最早的數字音頻格式,被Windows平台及其應用程式廣泛支持。WAV格式支持許多壓縮算法,支持多種音頻位數、采樣頻率和聲道,採用44.1kHz的采樣頻率,16位量化位數,因此WAV的音質與CD相差無幾,但WAV格式對存儲空間需求太大不便于交流和傳播。 
補充︰無損格式,缺點︰體積十分大﹗

ASF

  ASF的全稱是Advanced Streaming Format,是微軟所製訂的一種媒體播放格式,適合在網路上播放。而Windows Media On-Demand Producer則是製作ASF檔案的免費軟體,讓即使是初學人也能很輕易的利用現成的WAVAVI檔案製作ASF文件。 
補充︰少見的格式
  
AAC

  AAC實際上是高級音頻編碼的縮寫。AAC是由Fraunhofer IIS-A、杜比和AT&T共同開發的一種音頻格式,它是MPEG-2規範的一部分。AAC所採用的運算法則與MP3的運算法則有所不同,AAC透過結合其他的功能 來提升編碼效率。AAC的音頻算法在壓縮能力上遠遠超過了以前的一些壓縮算法(比如MP3等)。它還同時支持多達48個音軌、15個低頻音軌、更多種采樣率和比特率、多種語言的兼容能力、更高的解碼效率。總之,AAC可以在比MP3文件縮小30%的前提下提供更好的音質。
補充︰目前最好的有損格式之一。有多種編碼,faacnero為常見,比特率最高448kbps。硬體支持方面,高級mp3和現下手機普遍支持。

Mp3Pro

  Mp3ProMp3編碼格式的升級版本。MP3Pro是由瑞典Coding科技公司開發的,在保持相同的音質下同樣可以把聲音文件的文件量壓縮到原有MP3格式的一半大小。而且可以在基本不改變文件大小的情況下改善原先的MP3音樂音質。它能夠在用較低的比特率壓縮音頻文件的情況下,最大程度地保持壓縮前的音質。MP3pro可以實現完全的兼容性。經過mp3Pro壓縮的文件,擴展名仍舊是.mp3。可以在老的mp3播放器上播放。老的mp3文件可以在新的mp3pro播放器上進行播放。實現了該公司所謂的向前向后兼容
補充︰可以認為是mp3壓縮后的格式。

VQF

  VQF格式是由YAMAHANTT共同開發的一種音頻壓縮技術,它的壓縮率能夠達到1:18,因此相同情況下壓縮后VQF的文件體積比MP330%50%,更便利于網上傳播,同時音質極佳,接近CD音質(1644.1kHz身歷聲)。但VQF未公開技術標準,至今未能流行開來。 
補充︰少見

FLAC

  FLAC即是Free Lossless Audio Codec的縮寫,中文可解為無損音頻壓縮編碼FLAC是一套著名的自由音頻壓縮編碼,其特點是無損壓縮。不同于其他有損壓縮編碼如MP3 AAC,它不會破任何原有的音頻資訊,所以可以還原音樂光盤音質。現下它已被很多軟體及硬體音頻產品所支持。簡而言之,FLACMP3相仿,但是是無損壓縮的,也就是說音頻以FLAC模式壓縮不會丟失任何訊息。這種壓縮與Zip的模式類似,但是FLAC將給你更大的壓縮比率,因為FLAC是專門針對音頻的特點設計的壓縮模式,並且你可以使用播放器播放FLAC壓縮的文件,就象通常播放你的MP3文件一樣。
補充︰為無損格式,較ape而言,他體積大點,但是兼容性好,編碼速度快,播放器支持更廣

APE

  APE是目前流行的數字音樂文件格式之一。與MP3這類有損壓縮模式不同,APE是一種無損壓縮音頻技術,也就是說當你將從音頻CD上讀取的音頻數據文件壓縮成APE格式后,你還可以再將APE格式的文件還原,而還原后的音頻文件與壓縮前的一模一樣,沒有任何損失。APE的文件大小大概為CD的一半,但是隨著寬帶的普及,APE格式受到了許多音樂愛好者的喜愛,特別是對于希望透過網路傳輸音頻CD的朋友來說,APE可以幫助他們節約大量的資源。 
補充︰為無損壓縮格式,相較flac,其體積較小,編碼速度偏慢。

MID

  MIDmidi的簡稱,是它的擴展名。MIDI是英語Music Instrument Digital Interface 的縮寫,翻譯過來就是數字化樂器界面,也就是說它的真正涵義是一個供不同設備進行信號傳輸的界面的名稱。我們如今的MIDI音樂製作全都要靠這個界面,在這個界面之間傳送的訊息也就叫MIDI訊息。 MIDI最早是應用在電子合成器──一種用鍵盤演奏的電子樂器上, 由於早期的電子合成器的技術規範不統一,不同的合成器的鏈接很困難,在19838月,YAMAHAROLANDKAWAI等著名的電子樂器製造廠商聯合指定了統一的數字化樂器界面規範,這就是MIDI1.0技術規範。此后,各種電子合成器已經電子琴等電子樂器都採用了這個統一的規範,這樣,各種電子樂器就可以互相鏈接起來,傳達MIDI訊息,形成一個真正的合成音樂演奏系統。 
  由於多媒體計算機技術的迅速發展,計算機對數字信號的強大的處理能力,使得計算機處理MIDI訊息成為順理成章的事情了,所以,現下不少人把MIDI音樂稱之為電腦音樂。事實上,利用多媒體計算機不但可以播放、創作和實時地演奏MIDI音樂。甚至可以把MIDI音樂轉變成看的見的樂譜(五線譜或簡譜)打印出來,反之,也可以把樂譜變成美妙的音樂。利用MIDI的這個性質,可以用于音樂教學(尤其是識譜),讓學生利用計算機學習音樂知識和創作音樂。 

OGG

  Ogg全稱應該是OGG Vobis(ogg Vorbis) 是一種新的音頻壓縮格式,類似于MP3等現有的音樂格式。但有一點不同的是,它是完全免費、開放和沒有專利限制的。OGG Vobis有一個很出眾的特點,就是支持多聲道,隨著它的流行,以後用隨身聽來聽DTS編碼的多聲道作品將不會是夢想。
  Vorbis 是這種音頻壓縮機製的名字,而Ogg則是一個計畫的名字,該計畫意圖設計一個完全開放性的多媒體系統。目前該計畫只實現了OggVorbis這一部分。
  Ogg Vorbis文件的擴展名是.OGG。這種文件的設計格式是非常先進的。現下創建的OGG文件可以在未來的任何播放器上播放,因此,這種文件格式可以不斷地進行大小和音質的改良,而不影響舊有的編碼器或播放器。
補充︰目前最好的有損格式之一MP3部分支持,智能手機裝軟體部分可以支持,最高比特率500kbps

M4A

  M4AMPEG4音頻標準的文件的擴展名。在MPEG4標準中提到,普通的MPEG4文件擴展名是.mp4。自從Apple開始在它的iTunes以及 iPod中使用.m4a以區別MPEG4的視頻和音頻文件以來,.m4a這個擴展名變得流行了。目前,幾乎所有支持MPEG4音頻的軟體都支持.m4a。最常用的.m4a文件是使用AAC格式的(文件),不過其他的格式,比如Apple Lossless甚至mp3也可以被放在.m4a容器裡(TC注︰這個container的概念類似于.mkv文件)。可以安全的把只包含音頻的.mp4 文件的擴展名改成.m4a,以便讓它能在你喜歡的播放器裡播放,反之亦然。

eAAC+
  
 eaac+格式是新一代應用于手機的最優化的音樂格式。
  eaac+的擴展名為M4A
  它可以接近CD的音質,比MP3格式所占存儲空間更小。
 
總結︰
  音樂愛好者常見的格式有flac ape wav mp3 aac ogg wma
  其中壓縮比為︰aac>ogg>mp3(wma)>ape>flac>wav 同音質)
  mp3wma192kbps為分界線,192kbps以上mp3好,以下wma好。
  最高音質︰wav=flac=ape>aac>ogg>mp3>wma   wav=flac=ape=wma>aac>ogg>mp3  

其中 wma(有無損,但是少見) wav少見
  硬體支持方面︰MP3播放器 mp3>wma>wav>flac>ape aac ogg
  手機 mp3>wma>aac wav>flac ogg>ape 
  性能(就是綜合音質體積編碼率)︰aac>ogg>flac ape>mp3>wav wma


Ref: http://blog.xuite.net/ntueees93215/blog/42348496-%E9%9F%B3%E6%A8%82%E6%A0%BC%E5%BC%8F%E4%BB%8B%E7%B4%B9.%E6%AF%94%E8%BC%83