Doxygen ~ IGModel を一例にした, 数値モデルのドキュメンテーションにおける Doxygen の利用

Slides:



Advertisements
Similar presentations
Copyright © NTT COMWARE 2014 NTT COMWARE CONFIDENTIAL PROPRIETARY OSS-EAI ドキュメント生成ツール 利用マニュアル NTT コムウェア 品質生産性技術本部 技術 SE 部 OSS ・ AP 技術担当.
Advertisements

1 Why not Trac!?. 2 Why Trac? ポータルとして機能 バグ管理 タスク管理 コード管理 進捗管理 ドキュメント管理 (Wiki) オールインワンなので運用がラク.
Microsoft Office Microsoft Office の変遷と内容. Microsoft Office の変遷( 1 ) 名称内容発売時期 Microsoft Multiplan 表計算ソフト。 Multi-Chart( グラフ)。 MS- DOS 等 1982 年 Multi-Tool.
多次元データ 解析・可視化ソフトウェア GAVE A Grid Data Analyzer and Viewer, GAVE 竹本 和彰 北海道大学理学部地球科学科 地球流体力学研究室 4年 2004 年 2 月 3 日.
Word で XML マニュアルを編集 し、 XML を自動組版する 1. XML の自動組版概要 2. Word での原稿入力 アンテナハウス株式会社 2004/09/03.
XML ゼミ 独習 XML ~ 第 6 章 XHTML~ 6.1 XHTML の概要 6.2 XHTML の構造 谷津 哲平.
ITPASS Informational Training program with a spirit of self-help オプション課題の概要 高橋芳幸.
エンジニアから見る Mac OS X. Mac のイメージ お洒落、かっこいいマシン デザイナーさんが使うマシン DTP に強いマシン 実は、 Developer のためにある!・・・は ず.
Windows Azure ハンズオン トレーニング Windows Azure Web サイト入門.
BBT 大学 Ruby on Rails 開発環境セットアップマニュアル Mac 版 1.1 最終更新日: 2013/1/5.
Web アプリをユーザー毎に カスタマイズ可能にする AOP フレームワーク
blanco Framework ご紹介 DB版
BBT大学 Ruby on Rails開発環境セットアップマニュアル
教育情報学教育部・研究部 合同セミナーの場合
Processing + WiiRemote
Phoenixとは 2Dゲーム作成ツール. PROJECT. phoenixとは 2Dゲーム作成ツール.
D&UNITE 株式会社 代表取締役 株式会社 T-Planning 取締役 Microsoft MVP for ASP.NET/IIS
ソースプログラム・アーカイブ・サイト -関数依存グラフと検索への応用-
榮樂 英樹 LilyVM と仮想化技術 榮樂 英樹
トレーサビリティとインパクト分析 2011年7月13日 海谷 治彦.
NetBSD以外でpkgsrcを使うZoularis
オペレーティングシステムⅡ 第11回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト.
情報処理概論Ⅰ 2007 第7回 2007/6/6 情報処理概論Ⅰ 第7回.
数式処理ソフトウェア のご紹介 株式会社ライトストーン 高橋 直生.
正二十面体格子大気モデル IGModel プロジェクトの紹介
WordPressの基礎.
数値モデルの出力データをどのように取り扱っているか?
電脳Rubyプロジェクト概要 堀之内 武(京大生存圏研究所),
IDLTM/IONTMを使用した UDON (Universe via Darts ON-line) プロトタイプの作成
Mavenによる プロジェクト管理 近畿大学理工学部 情報学科3年  小野実.
早稲田大学大学院理工学研究科 情報科学専攻修士2年 後藤滋樹研究室 坂本義裕
Microsoft Office 2010 クイックガイド ~ファイルの互換性編~
シミュレーション物理5 運動方程式の方法: サブルーチンの使い方.
OSS-EAI ドキュメント生成ツール 利用マニュアル
SourceForge.JP (ソースフォージ・ジェーピー) 媒体資料
共同ローカリゼーション フレームワーク 井上 謙次.
davis / gtool4 プロジェクト その背景と野望
RDoc を用いた Fortran90/95 プログラムのドキュメント生成
Windows Summit /8/2017 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be.
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
TA 高田正法 B10 CPUを作る 2日目 SPIMのコンパイル TA 高田正法
スクリプト言語を用いたPHITSの連続実行
XSL-FO + MathML MathML表示、PDF生成、SVG生成
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
SPMODEL - ISPACK と gt4f90io による数値モデル開発 -
コードクローンに含まれるメソッド呼び出しの 変更度合の分析
Microsoftのマルチプラットフォーム戦略
各種波形フォーマット変換 / タイミングダイアグラム描画ツール
Microsoft Visual Studio 2005 Tools for
.NET Framework 3.0 概要 (旧称 : WinFX)
アスペクト指向に基づく 拡張可能な MDAモデルコンパイラ
Javaによる Webアプリケーション入門 第2回
東京工科大学 コンピュータサイエンス学部 亀田弘之
Nakano School of Business 経営情報ビジネス科 【 Java概論(Test1)】
TA 高田正法 B10 CPUを作る   実験の前に TA 高田正法
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Pattern Library Project
背景 課題 目的 手法 作業 期待 成果 有限体積法による汎用CFDにおける 流体構造連成解析ソルバーの計算効率の検証
Java における 先進的リフレクション技術
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
プログラムの差分記述を 容易に行うための レイヤー機構付きIDEの提案
クローン検出ツールを用いた ソフトウェアシステムの類似度調査
JSPの基本 J2EE I (データベース論) 第8回 /
vc-1. Visual Studio C++ の基本操作 (Visual Studio C++ の実用知識を学ぶシリーズ)
統合開発環境のための プログラミング言語拡張 フレームワーク
Microsoft Office 2010 クイックガイド ~ファイルの互換性編~
高橋芳幸1, 地球流体電脳倶楽部 dcmodel プロジェクト 1.神戸大学大学院理学研究科
識別子の読解を目的とした名詞辞書の作成方法の一試案
C#プログラミング実習 第1回.
Presentation transcript:

Doxygen ~ IGModel を一例にした, 数値モデルのドキュメンテーションにおける Doxygen の利用 河合 佑太

はじめに Doxygen イントロダクション Doxygen とは? Doxygen の主な特徴 dcmodel におけるドキュメンテーション方法 Doxygen とRDoc の比較 シンタックス 生成されるドキュメント IGModel における Doxygen の利用例 まとめ

Doxygen イントロダクション * Doxygen とは ? * Doxygen の主な特徴

Doxygen(ドキシジェン) とは? Dimitri van Heesch たちによって開発されたドキ ュメンテーションシジェネレーター 最新バージョン : 1.7.5.1 (2011-10-07 現在) 動作環境(OS) : GNU/Linux, Microsoft Windows, Mac OSX, Solaris など ライセンス : GNU GPL 対応プログラム言語 : C++, C, Java, Phython, IDL, C#, Fortran など

Doxygen の主な特徴 1 生成されるドキュメントの種類 オンラインドキュメントブラウザ (HTML 形式) オフラインリファレンスマニュアル (LATEX 形 式) RTF, Post script, ハイパーリンク付き PDF, 圧縮 HTML, Unix man ページ形式もサポート コード構造の可視化 include 依存関係, 継承ダイアグラム, コラボレー ション図, コールグラフの自動生成

Doxygen の主な特徴 2 ソースコードのドキュメンテーションに限らず, 普通 のドキュメントも作成可能. 400 を越えるプロジェクトのドキュメンテーション に利用されている. 例: GNU Standard C++ Library, MySQL, Open MPI, VTK など        (http://www.stack.nl/~dimitri/doxygen/projects.html) Fortran ソースに対応. 気象分野では Fortran を用いる傾向が強いが, Fortran に対応している有名なドキュメンテーションツールは 意外に少ない(?).

数値モデル開発における Doxygen の利用 * dcmodel におけるドキュメンテーション方法 * Doxygen と RDoc のシンタックス・生成物の比較 ~ IGModel における Doxygen の利用例

dcmodel におけるドキュメンテーション方法 DCPAM, deepconv, spmodel 等では, 従来から (Fortran 90/95 用に拡張した) RDoc を利用. IGModel では, 実験的に Doxygen を利用. もともとDoxygen を使った理由はIGModel のコードに Fortran 2003 の仕様を一部使っていたから. Rdoc と Doxygen の使用感や自動生成されるドキュメントの品質 の違いを評価するのがねらい. dcmodel DCPAM deepconv IGModel spmodel etc agcm 5 ispack BPmodel <dcmodel プロジェクト> -地球流体電脳倶楽部の数値モデルプロジェク ト (http://www.gfd-dennou.org/library/dcmodel/)

シンタックス~ RDoc との比較 1 [ Doxygen ] [ RDoc ] !> \brief Initialize a variable of derived type SWSolver. !! !! - Todo !! - Implement unit test for SWSolverModInit !! @attention You must call this pricedure before calling any procedeures in this !! module. !! @param[in,out] swsol The variable of derived type SWSolver. subroutine SWSolverModInit(swsol, param) Type(Aggrs), intent(inout) :: swsol Type(ParamList), intent(in) :: param !< The variable containg the simulation .. [ Doxygen ] subroutine SWSolverModInit(swsol, param) ! ! Initialize a variable of derived type SWSolver. !== Todo ! * Implement unit test for SWSolverModInit !== Attention ! * You must call this pricedure before calling any procedeures in this module. Type(Aggrs), intent(inout) :: swsol ! The variable of derived type SWSolver. Type(ParamList), intent(in) :: param ! The variable containg the simulation .. [ RDoc ]

シンタックス~ Rdoc との比較 2 [ Doxygen ] [ RDoc ] !> \brief Calculate the sum of the specified array elemnts. !! !! This subroutine calculates the following equation: !! \f[ !! \sum_{i=1}^{n} a_i !! \f] subroutine Sum(array, n) [ Doxygen ] subroutine Sum(array, n) ! Calculate the sum of the specified array elemnts. ! ! * This subroutine calculates the following equation: ! \[ ! \sum_{i=1}^{n} a_i ! \] [ RDoc ]

生成されるドキュメント 〜RDocとの比較 [ Doxygen ] HTML format [ RDoc ] HTML format

生成されるドキュメント 〜RDocとの比較 [ Doxygen ] PDF format(latex) [ Doxygen ] man format

生成されるドキュメント ~コード構造の可視化 1 [ Doxygen and GraphViz ] 継承ダイアグラム, コラボレーション図 IGMBaseLib(IGModel project) の C++ ラッパー部分のソースコードのドキュメントの一部

生成されるドキュメント ~コード構造の可視化 2 [ Doxygen and GraphViz ] コールグラフ IGMBaseLib(IGModel project) の微分演算を行う Fortran ソースコードのドキュメントの一部

実際の利用例 正二十面格子大気モデル IGModel プロジェクト http://www.gfd-dennou.org/member/ykawai/work/IGModel.htm

Doxygen と RDoc の比較 シンタックス Doxygen と RDoc 間のドキュメントの記述方法に, 本質的な違いはあまりない. 生成されるドキュメント Doxygen が生成するドキュメントは, レイアウトや 見た目が良い. また, 出力できる形式が多様. Doxygen は, 継承・コラボレーション図, コールグ ラフなどを自動生成できる. 完全な機能を使うには, Graphviz が必要. このようなダイアグラムは, RDoc でも書ける(?)

まとめ ドキュメンテーション生成ツールに一つである Doxygen の紹介を行った. 多数の出力形式, コード構造の可視化のサポート Fortran ソースに対応 (IGModel を例にして)数値モデル開発における Doxygen の利用について, RDoc と比較しながら 概要を説明した. シンタックス 生成されるドキュメントの様子

参考資料 Doxygen 公式サイト RDoc 公式サイト Graphviz http://www.doxygen.org/ http://rdoc.sourceforge.net/ RDoc Fortran 90/95 ソースコード解析機能強化版 http://www.gfd-dennou.org/library/dcmodel/rdoc-f95/ Graphviz http://graphviz.org/

予備スライド

Doxygen の内部構造 http://www.stack.nl/~dimitri/doxygen/arch.html