Researching

Markov Chain Introduction

資料彙整分享-
 
Markov Chain 是Markov(1907)用於說明布朗運動(Brownian Motion)
的物理現象之數學。
 
若狀態變數  St 滿足下列兩種條件  則 St 遵守 Markov Chain
 
(1) 滿足 Markov Properties :
若未來可能出現某種狀態的機率由目前的狀態來決定,不論過去曾發生
何種狀態或如何演變成為現在的狀態
(2) Steady State properties 已知 :
,每㆒試驗或觀察具有各種可能的結果,而每一種結果稱為狀態(state
或 regime)。所有的狀態需皆互斥mutually exclusive)且周延(collectively
exhaustive)。所謂互斥,即為㆒個試驗或觀察的結果不可以同時歸屬於兩個以
上不同的狀態;所謂周延則是指所有的試驗結果均可歸屬於某一特定的狀
態,而不會發生狀態不可歸屬的觀察或試驗。
其次,若一 移轉矩陣 P 經過 k 次移轉之後,若Pk 中的每一個元素皆為正
值。也就是不論從哪一個狀態開始,經過多次移轉之後,每種狀態都有被到
達的可能;且若將期間拉至無限長,則各狀態的機率會呈現穩定狀態。即穩
態機率和目前的狀態值是相互獨立的
 

The Evolution of a Programmer

實在太好笑了 不得不保留一份下來
http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html

The Evolution of a Programmer

High School/Jr.High

  10 PRINT "HELLO WORLD"
20 END

First year in College

  program Hello(input, output)
begin
writeln('Hello World')
end.

Senior year in College

  (defun hello
(print
(cons 'Hello (list 'World))))

New professional

  #include <stdio.h>
void main(void)
{
char *message[] = {"Hello ", "World"};
int i;

for(i = 0; i < 2; ++i)
printf("%s", message[i]);
printf("n");
}

Seasoned professional

  #include <iostream.h>
#include <string.h>

class string
{
private:
int size;
char *ptr;

string() : size(0), ptr(new char[1]) { ptr[0] = 0; }

string(const string &s) : size(s.size)
{
ptr = new char[size + 1];
strcpy(ptr, s.ptr);
}

~string()
{
delete [] ptr;
}

friend ostream &operator <<(ostream &, const string &);
string &operator=(const char *);
};

ostream &operator<<(ostream &stream, const string &s)
{
return(stream << s.ptr);
}

string &string::operator=(const char *chrs)
{
if (this != &chrs)
{
delete [] ptr;
size = strlen(chrs);
ptr = new char[size + 1];
strcpy(ptr, chrs);
}
return(*this);
}

int main()
{
string str;

str = "Hello World";
cout << str << endl;

return(0);
}

Master Programmer

  [
uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
]
library LHello
{
// bring in the master library
importlib("actimp.tlb");
importlib("actexp.tlb");

// bring in my interfaces
#include "pshlo.idl"

[
uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
]
cotype THello
{
interface IHello;
interface IPersistFile;
};
};

[
exe,
uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
]
module CHelloLib
{

// some code related header files
importheader(<windows.h>);
importheader(<ole2.h>);
importheader(<except.hxx>);
importheader("pshlo.h");
importheader("shlo.hxx");
importheader("mycls.hxx");

// needed typelibs
importlib("actimp.tlb");
importlib("actexp.tlb");
importlib("thlo.tlb");

[
uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
aggregatable
]
coclass CHello
{
cotype THello;
};
};


#include "ipfix.hxx"

extern HANDLE hEvent;

class CHello : public CHelloBase
{
public:
IPFIX(CLSID_CHello);

CHello(IUnknown *pUnk);
~CHello();

HRESULT __stdcall PrintSz(LPWSTR pwszString);

private:
static int cObjRef;
};


#include <windows.h>
#include <ole2.h>
#include <stdio.h>
#include <stdlib.h>
#include "thlo.h"
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

int CHello::cObjRef = 0;

CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)
{
cObjRef++;
return;
}

HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString)
{
printf("%ws
", pwszString);
return(ResultFromScode(S_OK));
}


CHello::~CHello(void)
{

// when the object count goes to zero, stop the server
cObjRef--;
if( cObjRef == 0 )
PulseEvent(hEvent);

return;
}

#include <windows.h>
#include <ole2.h>
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

HANDLE hEvent;

int _cdecl main(
int argc,
char * argv[]
) {
ULONG ulRef;
DWORD dwRegistration;
CHelloCF *pCF = new CHelloCF();

hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);

// Initialize the OLE libraries
CoInitializeEx(NULL, COINIT_MULTITHREADED);

CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
REGCLS_MULTIPLEUSE, &dwRegistration);

// wait on an event to stop
WaitForSingleObject(hEvent, INFINITE);

// revoke and release the class object
CoRevokeClassObject(dwRegistration);
ulRef = pCF->Release();

// Tell OLE we are going away.
CoUninitialize();

return(0); }

extern CLSID CLSID_CHello;
extern UUID LIBID_CHelloLib;

CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
0x2573F891,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
};

UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
0x2573F890,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
};

#include <windows.h>
#include <ole2.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include "pshlo.h"
#include "shlo.hxx"
#include "clsid.h"

int _cdecl main(
int argc,
char * argv[]
) {
HRESULT hRslt;
IHello *pHello;
ULONG ulCnt;
IMoniker * pmk;
WCHAR wcsT[_MAX_PATH];
WCHAR wcsPath[2 * _MAX_PATH];

// get object path
wcsPath[0] = '';
wcsT[0] = '';
if( argc > 1) {
mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
wcsupr(wcsPath);
}
else {
fprintf(stderr, "Object path must be specifiedn");
return(1);
}

// get print string
if(argc > 2)
mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
else
wcscpy(wcsT, L"Hello World");

printf("Linking to object %wsn", wcsPath);
printf("Text String %wsn", wcsT);

// Initialize the OLE libraries
hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);

if(SUCCEEDED(hRslt)) {


hRslt = CreateFileMoniker(wcsPath, &pmk);
if(SUCCEEDED(hRslt))
hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);

if(SUCCEEDED(hRslt)) {

// print a string out
pHello->PrintSz(wcsT);

Sleep(2000);
ulCnt = pHello->Release();
}
else
printf("Failure to connect, status: %lx", hRslt);

// Tell OLE we are going away.
CoUninitialize();
}

return(0);
}

Apprentice Hacker

  #!/usr/local/bin/perl
$msg="Hello, world.n";
if ($#ARGV >= 0) {
while(defined($arg=shift(@ARGV))) {
$outfilename = $arg;
open(FILE, ">" . $outfilename) || die "Can't write $arg: $!n";
print (FILE $msg);
close(FILE) || die "Can't close $arg: $!n";
}
} else {
print ($msg);
}
1;

Experienced Hacker

  #include <stdio.h>
#define S "Hello, Worldn"
main(){exit(printf(S) == strlen(S) ? 0 : 1);}

Seasoned Hacker

  % cc -o a.out ~/src/misc/hw/hw.c
% a.out

Guru Hacker

  % echo "Hello, world."

New Manager

  10 PRINT "HELLO WORLD"
20 END

Middle Manager

  mail -s "Hello, world." bob@b12
Bob, could you please write me a program that prints "Hello, world."?
I need it by tomorrow.
^D

Senior Manager

  % zmail jim
I need a "Hello, world." program by this afternoon.

Chief Executive

  % letter
letter: Command not found.
% mail
To: ^X ^F ^C
% help mail
help: Command not found.
% damn!
!: Event unrecognized
% logout

Researching

Lattice Multi Monte-Carlo Simulation for Supersolubilization

正式把 idea 的 名稱與方法決定了
 
Monte-Carlo 是很有名的賭場  所謂的 Monte-Carlo 法 就是在模擬真實事件的時候
藉由計算機產生的大量亂數來觀察自然界中很多時段內平均值可以預測  但是個別事件呈現隨機的現象
典型的例子之一: 擴散 大家都很清楚的布朗運動  做為粒子
 一滴墨水  滴在水杯中  最終的狀況會得到整杯平均稀釋分佈的墨水
但其實中間的墨水顆粒與水分子間的碰撞與交互作用其實複雜到幾乎難以進行真實計算模擬
這時候  我們可以將墨水的組成成分縮小化成小液滴或分子團 
視做隨機運動的個體進行 Random Walk 後觀察他的各個  當然關鍵是如何處理彼此的交互作用
以及, 如何選擇一個學理上合理的隨機亂數分佈產生器…
 
圖一. 蒙地卡羅著名的賭場外觀
圖二. 一個典型的 Random walk 處理的結果
Researching

“獨角鯨" (narwhal) 角 的功能

 
科學家終於找出神奇的 "獨角鯨" (narwhal) 角 的功能
 
下圖是獨角鯨的照片   一種神話般的、長著長牙的鯨魚。 它的身體有一輛巴士那麼大

如此巨大的獨角鯨它的長角究竟是派什麽用場的之前科學家一直無法回答這個問題…

熟悉演化理論的朋友們應當可以了解由於這樣的單角不僅無法提供攻擊的優勢

並且缺乏足夠的防禦的能力… 在這之前演化學者能夠提供的只有 " Sexual Potential " 這樣的概念

來提供演化的動力

哈佛的牙齒醫學學校(Harvard School of Dental Medicine, HSDM) 的研究人員Martin Nweeia 發現

獨角鯨神秘的螺旋狀長牙,其用為感應器,用來幫助測量水質,並與其他獨角鯨相互接觸…

更詳細的內容請參考原文網站出處及其原始論文..

Researching

SFE-SFC coupling system scheme

這是目前的進度…大致上把組件跟管線都接好了
剩下高壓測漏的部分…
完成的話  這就是國內第一套的超臨界流體線上反應及層析組件了
接著剩下一月到貨的微型光譜儀及下一步的高壓 flow cell
就可以進行高壓的微相狀態觀測了… ^^
該取什麼名字好呢????  給些建議吧…
Researching

傢廝裝箱 …

進度嚴重落後的 SFE-SFC coupling project…
終於在這兩週開始進入安裝的階段…
之前趕著去光阻實驗的所需要的進度  一直無法將系統的組件拆下
今天騰出一整天的時間  大致上完成了管線的安裝 
並將重要的核心部分(Injection-switching-sampling) 陸續安裝完成
 
開始準備構思 Demo Exp. 努力朝 AC 邁進!!!
 
PS. 完成安裝後..再把系統照片 post 給大家看…
未分類

更新了實驗室的網頁…

因為秋天的季節太短了…突然就轉成了冬天
今天一時興起…想再練習一下配色跟修圖的技巧
就又把 Logo 跟 TitleBar 都換了  調整一下配色的感覺…
嗯…有冬天的氣氛…Winter style website.. http://gmlab.chem.nthu.edu.tw
我還挺喜歡現在這種報紙式的版面…
唯一的缺點…IE 對 PNG 透明格式還是一樣…支援的很爛
退出瀏覽器市場吧…求求妳…臭微軟…
未分類

蝕-

到達的目的是黑暗的深淵,等待他們的是絕望,
      蜂擁而至的是背叛與疑惑,淚、嗚咽、孤獨,
            然而最後被留下來的,只是單純的夢…

未分類

陳昇, “然而"

***  陳昇 然而 ***
當頭髮已斑白的時候
妳是否還依然能牢記我
有一句話我一定要對妳說
我會在遙遠地方等妳  知道妳已經不再悲傷
I want you freedom, like a bird

***
送給妳…或許看不到這些字句… 但還是送給妳…
要自由的飛著…妳不適合悲傷…