切換到寬版
  • 廣告投放
  • 稿件投遞
  • 繁體中文
    • 4485閱讀
    • 8回復(fù)

    [原創(chuàng)]CCL的基本認(rèn)識(shí) [復(fù)制鏈接]

    上一主題 下一主題
    離線strategy
     
    發(fā)帖
    293
    光幣
    6
    光券
    0
    只看樓主 倒序閱讀 樓主  發(fā)表于: 2012-10-29
    偷閑了一個(gè)小時(shí),翻譯了個(gè)CCL Highlights,希望能有更多的人愛上OSLO,愛上光學(xué)設(shè)計(jì),愛上CCL!真正地提高水平 2QAP$f0Ln  
        CCL(編譯的命令語(yǔ)言)與程序管理器(AppMan)一起發(fā)布,為OSLO提供基礎(chǔ)的功能框架。CCL是一款現(xiàn)代的字節(jié)碼語(yǔ)言,它被專門地設(shè)計(jì)于對(duì)科學(xué)應(yīng)用軟件的支持。CCL融合字節(jié)碼高效的對(duì)外擴(kuò)展性(如數(shù)學(xué)庫(kù)及對(duì)圖像、字符串、數(shù)據(jù)庫(kù)的處理等),可解決一些比較棘手的問(wèn)題。 5$Kj#9g-#  
        在計(jì)算機(jī)的早期年代,偽碼(p-code)編譯器使得編譯處理高級(jí)語(yǔ)言變得大為簡(jiǎn)化。這些編譯器將諸如Fortran、Pacal等語(yǔ)言的源代碼翻譯成一個(gè)字節(jié)流,這個(gè)流再由偽碼解釋器翻譯成機(jī)器語(yǔ)言,逐步執(zhí)行。后來(lái)發(fā)現(xiàn),若將高級(jí)語(yǔ)言的源代碼直接編譯成機(jī)器語(yǔ)言(full compilation),其執(zhí)行效率要快許多,因此字節(jié)碼也就逐漸沒(méi)落了。當(dāng)然,直接編譯也有它自身的一些列問(wèn)題,如大量的地址重地位、可執(zhí)行程序體積很大等。 CxJ3u  
        近些年來(lái),有很多人意識(shí)到直接編譯與偽碼編譯都有它們應(yīng)用的地位,偽碼(又叫字節(jié)碼)語(yǔ)言又大行其道了。這些語(yǔ)言的解釋器現(xiàn)在叫虛擬機(jī),Java就是個(gè)典型例子,而CCL則是比Java早的多的字節(jié)碼語(yǔ)言。據(jù)報(bào)道稱,微軟正在開發(fā)自己的字節(jié)碼語(yǔ)言C#(看來(lái)這篇文檔比較老了)。但Java與C#有大量的以物件為導(dǎo)向的數(shù)據(jù)結(jié)構(gòu)(面向?qū)ο螅┮赃m應(yīng)計(jì)算機(jī)科學(xué)(給碼農(nóng)們編程用的),而CCL的數(shù)據(jù)結(jié)構(gòu)要簡(jiǎn)單的多,因?yàn)樗辉O(shè)計(jì)于科學(xué)計(jì)算。 _-543B}  
        CCL的語(yǔ)法基于C語(yǔ)言(估計(jì)只要上過(guò)學(xué)的都能看懂,C里面的絕大部分庫(kù)函數(shù)可直接拿過(guò)來(lái)用),C已經(jīng)成為計(jì)算機(jī)的通用語(yǔ)言,是大多數(shù)現(xiàn)代語(yǔ)言的基石。盡管一些光學(xué)代碼仍是用Fortran寫的,但主流的工程軟件中已很難見到Fortran的影子了。Fortran與當(dāng)代計(jì)算機(jī)的圖形窗口系統(tǒng)交互地不太好,而C語(yǔ)言,從某種意義上說(shuō),由于它簡(jiǎn)單的結(jié)構(gòu),使其成為窗口開發(fā)的理想工具。實(shí)際上,很多所謂的C++程序,絕大部分還是用C實(shí)現(xiàn)的。 /EP zT7  
        當(dāng)前人們對(duì)以窗口為導(dǎo)向的操作系統(tǒng)的普遍接受,對(duì)于科學(xué)工程來(lái)說(shuō)是有好有壞的。正面地講,圖形接口使得總多學(xué)科領(lǐng)域的工程軟件的操作大為簡(jiǎn)化,反面地說(shuō),這些一連串的窗口程序就像是為工程科學(xué)提供了一本畫冊(cè),使我們的創(chuàng)造力下降。更重要的是,復(fù)雜的窗口編程使得工程師想實(shí)現(xiàn)自己的編程計(jì)算尤為困難,如果他不是很牛逼。 /BQqg0 8@L  
        光學(xué)設(shè)計(jì)中的數(shù)值試驗(yàn)是個(gè)很重要的一環(huán),CCL為光學(xué)設(shè)計(jì)師提供了高效的、實(shí)用的和已被證明了的牛X環(huán)境,以管理實(shí)現(xiàn)這些數(shù)值試驗(yàn)。在近十年的領(lǐng)域應(yīng)用中(估計(jì)現(xiàn)在遠(yuǎn)不至了),CCL已經(jīng)成為了少有的穩(wěn)健程序語(yǔ)言。事實(shí)上,OSLO的絕大部分功能用CCL實(shí)現(xiàn)已被證明是極大的成功,將對(duì)光線追跡、像質(zhì)評(píng)價(jià)及系統(tǒng)優(yōu)化的程式源碼展現(xiàn)給你,這樣你就可很容易地為自己的項(xiàng)目進(jìn)行相應(yīng)的調(diào)整和擴(kuò)展。在6.1版本中(現(xiàn)在已經(jīng)6.6了),許多CCL庫(kù)函數(shù)都被重寫和優(yōu)化,包括: =jS$piw.  
        1、自動(dòng)產(chǎn)生對(duì)話框供參數(shù)輸入 |j9aTv[`  
        2、自動(dòng)繪圖程式。你可以在一個(gè)函數(shù)調(diào)用中繪制任何數(shù)據(jù)。 -mh"["L"  
        3、優(yōu)化提高錯(cuò)誤處理機(jī)制 xL i3|^q  
        由于OSLO的Standard版和Premium版的絕大部分程式都是用CCL實(shí)現(xiàn)的,因此這兩個(gè)版本還提供了一個(gè)授權(quán)的UltraEdit編輯器,這個(gè)編輯器可以讓你隨心所欲地編輯很多種語(yǔ)言源代碼,對(duì)CCL它也提供了語(yǔ)法高亮顯示(貌似現(xiàn)在是提供Notepad++了吧,GNU開源項(xiàng)目,免費(fèi)的)。 5p:BHw;%;  
    原文:http://www.sinopt.com/
     
    分享到
    離線binaryoptics
    發(fā)帖
    152
    光幣
    134
    光券
    0
    只看該作者 1樓 發(fā)表于: 2012-10-30
    干得不錯(cuò),頂一下!
    離線strategy
    發(fā)帖
    293
    光幣
    6
    光券
    0
    只看該作者 2樓 發(fā)表于: 2012-10-30
    回 binaryoptics 的帖子
    binaryoptics:干得不錯(cuò),頂一下! (2012-10-30 00:35)  G/# <d-}_  
    =P9rOK=  
    呵呵,再頂
    離線linlin911911
    發(fā)帖
    912
    光幣
    129057
    光券
    0
    只看該作者 3樓 發(fā)表于: 2012-10-30
    OSLO現(xiàn)在所屬的公司對(duì)OSLO基本上停止開發(fā)了。最高版本的價(jià)格也隨之,由5K5美元跌到3K5美元。試用過(guò)OSLO 6.6,發(fā)現(xiàn)存在一個(gè)明顯的功能BUG。功能上除了增加Q型非球面外,都沒(méi)什么發(fā)展。 VWK/(>TP  
    +$(y2F7|u-  
    最近幾年,流行直接優(yōu)化公差后的性能,以及高效地優(yōu)化非球面。 M!!vr8}  
    uaKbqX  
    雖然不少新功能由ZEMAX最先實(shí)現(xiàn),但是真正做好這兩種功能還是CODE V。OSLO 一點(diǎn)都沒(méi)緊跟時(shí)代潮流的發(fā)展,太令人失望了。 W?E,"z  
    w_@{v wM$A  
    這個(gè)月剛出來(lái)的CODE V 10.5,就有效增加公差方面的功能,可以高效地、直接優(yōu)化公差,這在以往是很難實(shí)現(xiàn)的。 H*3u]Ebh  
    _