% 表題   らくらく DCPAM5 --- ソースをを変更して計算を実行したい場合には
%
% 履歴
%\Drireki{2012/02/24 竹広真一}
%
%  \Dchapterhead
%
\chapter[ソースの変更・追加]{ソースを変更・追加して計算を実行したい場合には}
\Dchaplab{ソース変更}

  この章では, ソースプログラムを変更あるいは追加して
  実行ファイルを作成し計算を行う際のお勧めの方法について記す. 

  \section[一般的手順]{ソースを変更・追加する一般的手順}

    \Dmodel のソースプログラムを変更あるいは追加したい場合には, 
    \Dmodel のオリジナルソースツリー内にあるファイルを直接編集したり
    ツリー内にファイルを追加したりすることは避けて頂きたい. 
    以下の手順のように, オリジナルソースツリーとは別のディレクトリを
    用意してその下で作業することを勧める. 
    そのための手順は一般的に次のようになるだろう. 
    %
    \begin{enumerate}
      \item ライブラリとモジュールファイルの作成\\
        オリジナルソースツリーで \Dmodel を configure, コンパイルしておく.

      \item 実験用ディレクトリの作成\\
        オリジナルソースツリーの外に実験用ディレクトリを作成する. 

      \item ソースプログラムの編集・追加\\
        改変したいソースプログラムファイルをオリジナルソースから
        コピーし, 編集する. 
        あるいは新たに追加したいモジュールのソースプログラムを
        作成する.

      \item 設定ファイル (namelist ファイル) の準備\\
        実験用設定ファイルを作業ディレクトリに用意する. 
        オリジナルソースの例をコピーし必要に応じて編集するのが簡単だろう. 

      \item 実験用のディレクトリのセットアップ\\
        実行ファイル作成のための環境(Makefile 等)を用意する. 

      \item 実行ファイルの作成\\
        make コマンドで実行ファイルを作成する. 

      \item 実験の実行
    \end{enumerate}
    %
    作業ディレクトリは以下のような構造を想定している. 
    %
    \begin{verbatim}
        top-directory/
             /exp-name1/
                       /src/           # 非標準ソースオリジナル
                           /main       # 実行プログラムソース置き場
                           /otherdir1  # モジュールソース置き場
                           ... 
                       /conf           # 非標準設定ファイルオリジナル
                       /bin            # 実行ファイル置き場
                       /include        # モジュールファイル置き場
                       /data1          # データ置き場1
                       /data2          # データ置き場2
                       ...
             /exp-name2/
                        ... 
   \end{verbatim}
        % top-directory/
        %      /exp-name1/
        %                /src/           # 非標準ソースオリジナル
        %                    /main       # 実行プログラムソース置き場
        %                    /otherdir1  # モジュールソース置き場
        %                    ... 
        %                /conf           # 非標準設定ファイルオリジナル
        %                /exp-1/         # 実験 1 用ディレクトリ
        %                      /src/     # 上位ディレクトリのコピー
        %                          /main
        %                          /otherdir1
        %                          ... 
        %                      /conf     # 上位ディレクトリのコピー
        %                      /bin      # 実行ファイル置き場
        %                      /include  # モジュールファイル置き場
        %                      /data1    # データ置き場1
        %                      /data2    # データ置き場2
        %                      ...
        %                /exp-2/         # 実験 2 用ディレクトリ
	% 	             ...
        %      /exp-name2/
        %                 ... 


%%% Local Variables: 
%%% mode: japanese-latex
%%% TeX-master: "../rakuraku"
%%% End: 
