PAML

2008 年 11 月 26 日 改訂
井上 潤

 このページは PAML という系統解析プログラムを使うための個人的なメモです.PAML の一般的な操作方法に関してはこちらをご覧下さい.

固有値・固有ベクトル,アミノ酸組成のプリントアウト

codeml.c

(1)
fprintf(fout,"\nDetailed output identifying parameters\n");\
の直後に以下の行を加える
fprintf(fout,"\n\ncategory 0 1 2 3 4 5 6 7\n");

(2)
} /* for(itree) */
の直前に以下のコードを加える.

FOR(i,com.ncode) Root[i]=exp(Root[i]*.01);

fprintf(fout, "\nRoot");
matout(fout, Root, 1, com.ncode);
FILE *fpRoot; fpRoot = fopen("evalfl.mtREVF", "w");
matout(fpRoot, Root, 1, com.ncode);
fclose (fpRoot);

fprintf(fout, "\nU_vector");
matout(fout, U, com.ncode, com.ncode);
FILE *fpU_vec; fpU_vec = fopen("evecfl.mtREVF", "w");
fprintf(fpU_vec, "A R N D C Q E G H I L K M F P S T W Y V\n");
matout(fpU_vec, U, com.ncode, com.ncode);
fclose (fpU_vec);

fprintf(fout, "\nV_vector");
matout(fout, V, com.ncode, com.ncode);
FILE *fpV_vec; fpV_vec = fopen("ievecfl.mtREVF", "w");
fprintf(fpV_vec, "A R N D C Q E G H I L K M F P S T W Y V\n");
matout(fpV_vec, V, com.ncode, com.ncode);
fclose (fpV_vec);

fprintf(fout, "\nfreq");
matout(fout, com.pi, 1, com.ncode);
FILE *fpFreq; fpFreq = fopen("reveqps.mtREVF", "w");
fprintf(fpFreq, "A \nR \nN \nD \nC \nQ \nE \nG \nH \nI \nL \nK \nM \nF \nP \nS \nT \nW \nY \nV \n");
matout(fpFreq, com.pi, 1, com.ncode);
fclose (fpFreq); exit(0);