Managing and Sharing MATLAB Code

Similar documents
インテル(R) Visual Fortran コンパイラ 10.0

Maple 18 ネットワーク版インストール手順

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

Python によるジオプロセシング スクリプト入門

製品開発の現場では 各種のセンサーや測定環境を利用したデータ解析が行われ シミュレーションや動作検証等に役立てられています しかし 日々収集されるデータ量は増加し 解析も複雑化しており データ解析の負荷は徐々に重くなっています 例えば自動車の車両計測データを解析する場合 取得したデータをそのまま解析

Python によるジオプロセシング スクリプト入門

Maple 18 スタンドアロン版インストール手順

03 Podium Walkerのインストール方法およびアンインストール .docx

Maple 12 Windows版シングルユーザ/ネットワークライセンス

生成された C コードの理解 コメント元になった MATLAB コードを C コード内にコメントとして追加しておくと その C コードの由来をより簡単に理解できることがよくありま [ 詳細設定 ] [ コード外観 ] を選択 C コードのカスタマイズ より効率的な C コードを生成するベストプラクテ

Microsoft Word - matlab-coder-code-generation-quick-start-guide-japanese-r2016a

CubePDF ユーザーズマニュアル

(Microsoft Word - FireWall\202\314\227\341\212O\220\335\222\350\202\360\215s\202\244.doc)

Maple 12 Windows版シングルユーザ/ネットワークライセンス

PowerPoint プレゼンテーション

<4D F736F F D20837D815B B838B837A838B835F E836782CC91E391D68EE892692E646F63>

Maple 12 Windows版シングルユーザ/ネットワークライセンス

Eclipse マニュアル <作成目的> Eclipse のインストール方法などを紹介したページはいろいろありますが 専門用語がわからない初心者でもわか りやすく Eclipse のインストール方法 基本操作などをまとめたマニュアル作成を目的としています <目次> 1 Eclipse のインストール

インストール後のアプリケーション実行

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

Microsoft Word - 01.【電子入札】パソコンの設定方法について 修正_

Azure 活用シナリオ PHP ホームページを移行 1

PowerPoint プレゼンテーション

[Unifinity]運用マニュアル

PHP 開発ツール Zend Studio PHP アフ リケーションサーハ ー Zend Server OSC Tokyo/Spring /02/28 株式会社イグアスソリューション事業部

1. WebShare 編 1.1. ログイン / ログアウト ログイン 1 WebShare の URL にアクセスします xxxxx 部分は会社様によって異なります xxxxx. 2 ログイン名 パスワードを入力し

(3) ソフトウェアのアップデート (3-0) アップデートの開始 今すぐアップデート ボタンをクリックする (3-1) 最新版のダウンロード準備完了 ポップアップウィンドウポップアップウィンドウをクリックする ( マークは避けてクリックすること ) (3-2) ダウンロード準備完了 Java(TM

Microsoft PowerPoint - 【最終提出版】 MATLAB_EXPO2014講演資料_ルネサス菅原.pptx

5-3- 基統合開発環境に関する知識 1 独立行政法人情報処理推進機構

Source Insight

クライアント証明書導入マニュアル

スライド 1

DigiCert EV コード署名証明書 Microsoft Authenticode署名手順書

目次 第 1 章はじめに 電子入札システムを使用するまでの流れ 1 第 2 章 Java ポリシーを設定する前に 前提条件の確認 2 第 3 章 Java のバージョンについて Java バージョン確認方法 Java のアンインストール ( ケース2の

プリンタドライバのバージョンと パッケージのバージョン バージョン には プリンタドライバ単体のバージョンとプリンタドライバ群を表すパッケージバージョンの 2 通りあります プリンタドライバのバージョンは プリンタドライバプロパティを開いて確認することができます 1. プリンタフォルダを開きます 2

スライド 1

SimulinkによるReal-Time Test環境の構築

Microsoft Word JA_revH.doc

Team Foundation Server 2018 を使用したバージョン管理 補足資料

zabbix エージェント インストールマニュアル [Windows Server] 第 1.2 版 2018 年 05 月 18 日 青い森クラウドベース株式会社

03 Podium Walkerのインストール方法およびアンインストール .docx

ゲームプログラミング講習 第0章 導入

Application Note Application Note No. ESC-APN 文書番号 : ESC-APN Tcl link library インストールガイド はじめに Tcl link library インストールガイド ( 以下 本書 ) では Act

PowerPoint プレゼンテーション

EnSight 10.1の新機能

国土数値情報 XML シェープ変換ツール 操作説明書 平成 23 年 7 月 国土交通省国土政策局

(1)IE6 の設定手順 (1)IE6 の設定手順 1) 信頼済みサイトの追加手順 1: ブラウザ (Internet Explorer) を起動します 手順 2: ツール / インターネットオプション / セキュリティ メニューを選択します 手順 3: セキュリティ タブの 信頼済みサイト を選択

Microsoft Word - VB.doc

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

説明書

目次 はじめに ツールのインストール ソフトウェアを起動する 画像ファイルの選択... 7 位置の調整... 8 背景色の設定 進捗バーの設定 パスワード設定 ユーザー情報の設定 設定

bebras_slide.pptx

目次 1 はじめに 利用条件 動作環境 アドインのインストール アドインの操作方法 アドインの実行 Excel CSV の出力 テンプレートの作成 編集 テンプレートのレイアウト変更 特記

プログラミング基礎

情報更新日 :2012/5/20 サンプルソースの文字化けについて [ トラブル事例 ] Eclipse に ダウンロードしたソースコードをインポートすると文字化けが起きる ( 関連箇所 : 0-1 はじめに ) [ 回答 ] 本書でその利用を前提としております Tech Fun Eclipse は

GSLetterNeo vol 年 7 月 形式手法コトハジメ TLA + Toolbox を使って (2)- 熊澤努 sra.co.jp はじめに GSLetterNeo Vol.130 で TLA + Toolbox を紹介しました 今回からより詳しく T

< B C815B F898AFA90DD92E8837D836A B E786C73>

Install / Protect / Monetize InstallShield 全機能 データシート プロフェッショナルなインストールの作成 PREMIER PROFESSIONAL EXPRESS MSIX パッケージ サポート フレームワークをサポート Windows Installer(

PowerPoint プレゼンテーション

Moodleアンケートの質問一括変換ツール

IBM SPSS Amos インストール手順 (サイト ライセンス)

1

項番 現象 原因 対応手順書など 4 代理店コードでのダウンロード時に以下のメッセージの画面が表示される サービス時間外のため 現在 このサービスはご利用になれません 当機能のサービス時間外です 以下の時間帯にダウンロードしてください 月曜日 ~ 金曜日 7:00~21:00 土曜日 7:00~17

開発ツールのコラボレーション機能を検証する

ご利用の前に 目次 推奨環境とソフトウェアのバージョン 推奨環境について Windows8 Windows8.1 について Internet Explorer のバージョン確認 SAMWEB の初期設定 セ

ADempiere (3.5)

注意事項 (1)Windows 10 を使用する場合 注意事項 1 注意事項 3 注意事項 4 についてご対応をお願いします (2)Windows 8.1 を使用する場合 注意事項 2 注意事項 3 注意事項 4 についてご対応をお願いします (3)Windows 7 上で Internet Exp

動作環境設定

Shareresearchオンラインマニュアル

目次 1. はじめに 本書対象者 PALRO のアプリケーションについて Ubuntu 8.04LTS の入手について Linux 上での開発環境の構築 事前準備 Ubuntu のインストール..

PowerPoint プレゼンテーション

24th Embarcadero Developer Camp

Studuinoソフトウェアのインストール

資産ファイルのエクスポート(会計王19シリーズ) 運用ガイド

(Microsoft Word - Compiere3.0Windows\203C\203\223\203X\203g\201[\203\213\203K\203C\203h.doc)

UTF8対応日本語簡易マニュアル

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows : インストール・ガイド

MP:eMeeting インストールマニュアル Version /06/30 株式会社デジタル ウント メア

Acrobat Reader DCのインストール・操作方法―Windows 10/8.1/7

Microsoft Word - 03-パソコン事前設定手順書【WindowsVISTA/7】.doc

MF mypresto インストールガイド 目次 新規インストールの手順 (Windows 版 )... 2 MF mypresto の起動 (Windows 版 )... 7 新規インストールの手順 (Mac 版 )... 8 MF mypresto の起動 (Mac 版 ) 新規イン

Microsoft Word - index.html

5-3- 応統合開発環境に関する知識 1 独立行政法人情報処理推進機構

Microsoft PowerPoint - Symposia2013_SourceControl_Furuzono_presentation.pptx

Microsoft Word - (修正)Internet Explorer 8 9設定手順 受注者.DOC

ご利用の前に 目次 - 0. 推奨環境とソフトウェアのバージョン 推奨環境について Windows8 Windows8. について Internet Explorer のバージョン確認 SAMWEB の初期設定 セキュリティ設定..

注意事項 (1)Windows 10 を使用する場合 注意事項 1 注意事項 3 注意事項 4 についてご対応をお願いします (2)Windows 8.1 を使用する場合 注意事項 2 注意事項 3 注意事項 4 についてご対応をお願いします (3)Windows 7 上で Internet Exp

Microsoft Word - Office365マニュアル_教職員向け.docx

注意事項 (1)Windows 10 を使用する場合 注意事項 1 注意事項 3 注意事項 4 についてご対応をお願いします (2)Windows 8.1 を使用する場合 注意事項 2 注意事項 3 注意事項 4 についてご対応をお願いします (3)Windows 7 上で Internet Exp

InstallShield FAQ < 独自の InstallShield 前提条件を作成する > 注 ) このドキュメントは InstallShield 2014 Premier Edition を基に作成しています InstallShield 2014 以外のバージョンでは設定名などが異なる場合

1. はじめに 本書は スプリット演算器 MFS2 用コンフィギュレータソフトウェア の取扱方法 操作手順 注意事項などを説明したものです Windows の操作や用語を理解している方を前提にしています Windows の操作や用語については それぞれのマニュアルを参照してください 1.1. MFS

Web GIS Template Uploader 利用ガイド

改版履歴 版数 改版日付 改版内容 /03/14 新規作成 2013/03まで製品サイトで公開していた WebSAM DeploymentManager Ver6.1 SQL Server 2012 製品版のデータベース構築手順書 ( 第 1 版 ) を本 書に統合しました 2

文書番号: NWT KO001

スマートにプログラミング Android 入門編第 2 版 SDK4/2.3 対応 よくあるご質問 (FAQ) ここでは 読者の皆様から寄せられた質問の中で 比較的多く見受けられたトラブル事例とその解決策を集め掲載致しました お困りの際の解決のヒントとしてご利用下さい なお スマートにプログラミング

InstallShiled FAQ デバイスドライバーのインストール 注 ) このドキュメントは InstallShield 2011 Premier Edition を基に作成しています InstallShield 2011 以外のバージョンでは設定名などが異なる場合もあります 概要 Instal

3 メニュー選択後 Web ブラウザ画面にセキュリティ証明の証明書エラー画面が表示された場合は このサイトの閲覧を続行する ( 推奨されません ) をクリックします このサイトの閲覧を続行する ( 推奨されません ) をクリック セキュリティ証明の証明書エラー画面 4 Web ブラウザ画面に URL

SilverlightR について PRONEXUS WORKS は OS と Web ブラウザに従来どおりマイクロソフト社の Windows シリ ーズと InternetExplorer シリーズを採用すると共に 新たにマイクロソフト社のプラグインソフトである SilverlightR を利用い

GettingStartedTK2

Transcription:

MATLAB 入門 ~ 開発向けプログラミング編 ~ MathWorks Japan アプリケーションエンジニアリング部テクニカルコンピューティング 大開孝文 2015 The MathWorks, Inc. 1

プログラミング言語としての MATLAB 2014 年 7 月 IEEE Spectrum による プログラミング言語の人気調査 (12 種類の項目での結果 ) 結果 : MATLAB が C, C++, Java などの従来からの汎用言語と並び 10 位にランクイン Data sources: Google, CareerBuilder, IEEE Xplore, Github, and more. 2

ソナーのマルチ ビーム測深機から得られるデータを解析するソフトウェアの開発と配布 Challenge 科学者は海洋学の生データ ( テラバイト単位のサイズ ) を処理して 分析することが可能 Solution MATLAB を使ってソナーのマルチ ビーム測深機から得られるデータを信号処理 解析 可視化の高品質なソフトウェアを作成 Results アルゴリズム開発が促進 何十万ものコード行は 効率化 再利用 MATLAB を使うことで 同等のコードを C で記述するコード量を 75% 削減 (MATLAB 27 万行 ) MATLABを使うことで アルゴリズムの開発 計算結果の可視化 何度もアルゴリズムを洗練することができたので MATLABはソフトウェアを開発するための理想的な環境であることがわかりました." Jean-Marie Augustin Ifremer 事例 (HTML) 3

はじめに テスト MATLAB 開発者 MATLAB ファイル データ ドキュメント エンドユーザー ユニットテスト レポート生成パブリッシュ機能.mltbx.exe コードの品質 / パフォーマンス コードアナライザー デバック プロファイラー チェックイン / チェックアウト リビジョン管理 協調 連携 GitHub ソース管理 (Git, Subversion) 4

アジェンダ MATLAB スクリプトと関数 コードの品質とパフォーマンス プログラムのテスト ソースコントロールによる MATLAB プログラミングの管理 アプリケーション カスタムツールボックスの共有化 5

MATLAB スクリプトと関数 ファイルの先頭に注目 スクリプト : X 関数 : function 可変入出力が可能 varargin / varargout nargin/narginchk : 入力数のチェック nargout/nargoutchk : 出力数のチェック function varargout = varlist(varargin) narginchk(1, 2) % 引数の数チェック fprintf('number of arguments: %d n',nargin) for k = 1:nargin % 入力回数ループ処理 val = (varargin{k}); % サイズを出力する S = whos('val'); % 変数情報の取得 varargout{k} = S.class; % データ型の出力 end サブ関数の定義 スクリプト : X 関数 : 6

アジェンダ MATLAB スクリプトと関数 コードの品質とパフォーマンス プログラムのテスト ソースコントロールによる MATLAB プログラミングの管理 アプリケーション カスタムツールボックスの共有化 7

MATLAB のコード改善 コードの分析 デバック 入力 エラーのハンドリング 8

MATLAB コードのパフォーマンス測定 プロファイラ コード内のボトルネック検出 相対実行時間の測定 tic/toc コード スクリプトの部分実行時間測定 (tic~toc の間 ) timeit 関数の時間測定 何回も測定した時間の平均値 Video 9

MATLAB コードアナライザー コードの最適化とシンタックスエラーの回避 エディター内ので自動チェック checkcode フォルダー内の複数ファイルの自動実行とレポート生成 Video 10

MATLAB コードのデバック 診断検出 エディター内でのグラフィカル設定 コマンドラインでの設定 ブレイクポイントの設定 ファイル内でのステップ実行 変数のチェック Video 12

アジェンダ MATLAB スクリプトと関数 コードの品質とパフォーマンス プログラムのテスト ソースコントロールによる MATLAB プログラミングの管理 アプリケーション カスタムツールボックスの共有化 14

なぜ プログラミングのテストが必要か? テストは品質の向上 工数の削減に貢献 コードの動作チェック プログラミングの修正が早く着手できる レグレッションテスト ユニットテストの流れ テスト 1 スタート 準備設定 setuponce : 終了処理 teardownonce 終了 テスト N 15

MATLAB で効果的なコードテスト MATLAB ユニットテストフレームワーク スクリプトベース 関数ベース クラス (OOP) ベース テストできる種類 : テストのタイプ テスト結果のレポート出力が可能 ( パブリッシュと併用 ) Video 16

アジェンダ MATLAB スクリプトと関数 コードの品質とパフォーマンス プログラムのテスト ソースコントロールによる MATLAB プログラミングの管理 アプリケーション カスタムツールボックスの共有化 17

コラボレーション開発 MATLAB 言語におけるコラボレーション開発の増加 効率的にコードやアイデアを共有することによって より速く より多くの結果を実現 コードを管理することの必要性 ソースコントロール環境を使うことで : トラッキング 比較 コードを前のバージョンに戻す コードの共有化をするときに コードのコピーを修正 変更をコミットする ハイライト表示 同時に複数の人がコード変更を行った時の解決 18

ソースコントロール MATLAB デスクトップから コードの管理 ソースコントロールのツールの活用 GIT / Subversion とのインテグレーション 現在のフォルダとの連携 リビジョン間の変更の確認と競合を回避するための比較ツール Video 19

GitHub との連携事例 20

アジェンダ MATLAB スクリプトと関数 コードの品質とパフォーマンス プログラムのテスト ソースコントロールによる MATLAB プログラミングの管理 アプリケーション カスタムツールボックスの共有化 21

共有化 ドキュメント レポートの自動生成 アプリケーション (exe) の配布 動的ライブラリ (dll) の配布 MATLAB アプリと カスタム Toolbox のパッケージ化 MATLAB MATLAB Compiler MATLAB Compiler SDK Standalone Application Excel Add-in C/C ++ Java.NET MATLAB Production Server Video 22

共通の疑問? ユーザーにアプリ の共有させる方法は? インストール方法 使用方法 アップデート情報 アンインストール方法 MATLAB パスを管理する方法はどれが一番いいのか? 23

ファイル共有サイト (File Exchange) にあるファイルを共有する方法 24

アプリのパッケージ化 UI 上のある自己完結型のアプリ インストールファイルを一緒にアプリが提供 アプリギャラリーに登録できる簡単な配布環境とインストレーションファイル 自動的に依存性のファイルも含まれる アプリを使うための 依存しているツールボックスが表示 Video 25

カスタムツールボックスのパッケージ化 単一のインストーラで カスタムツールボックスの作成 プログラム, サンプルデータ, アプリ, ドキュメント 例題を含める 依存ファイルのチェックと自動的な追加 必要なツールボックスの表示 インストール時に 自動的にフォルダとファイルをパス上に配置 アイコンから詳細の表示 アンインストールすることもツールボックスのダイアログからの可能 Video 26

まとめ テスト MATLAB 開発者 MATLAB ファイル データ ドキュメント エンドユーザー ユニットテスト レポート生成パブリッシュ機能.exe.mltbx コードの品質 / パフォーマンス コードアナライザー デバック プロファイラー チェックイン / チェックアウト リビジョン管理 協調 連携 GitHub ソース管理 (Git, Subversion) 27

大好評の MATLAB の授業を いつでも自分の PC から! 新しいトレーニング形態のお知らせ (2 分だけ CM) 必要な物は Web ブラウザ だけ いつでも 好きな時間に 学習可能 MATLAB 基礎コース が日本語化 28

2015 The MathWorks, Inc. 29

MATLAB 開発者向け Tip 集 30

テスト MATLAB 開発者 MATLAB ファイル データ ドキュメント エンドユーザー ユニットテスト レポート生成パブリッシュ機能.mltbx.exe コードの品質 / パフォーマンス コードアナライザー デバック プロファイラー チェックイン / チェックアウト リビジョン管理 協調 連携 GitHub ソース管理 (Git, Subversion) 31

ダイジェスト 1 スクリプトと関数について 関数 : 先頭に function 可変入出力が可能 varargin / varargout 入力 出力変数 nargin/narginchk : 入力数のチェック nargout/nargoutchk : 出力数のチェック コードの品質 コードアナライザー : 静的解析機能 [ ホーム ] タブ コードの解析 MATLABエディタの右端の色を確認 : 緑がOK デバッカー [ エディター ] タブを開くエディターの行数の横の をクリック : 赤 / 黄色の エラー直前で止める : dbstop if error 不要な出力要素を抑えるときには ~ サブ関数の定義 スクリプト : X 関数 : 時間の計測 プロファイラ : プログラム全体の時間計測 [ ホーム ] タブ 実行および時間の計測 tic/toc : コマンド間の時間計測 timeit: 単体関数の平均時間計測 32

ダイジェスト 2 ソースコントロール対応 (R2015a -) Git Subversion(1.8) テスト環境 ユニットテストフレームワークを提供 (R2013a~) スクリプト 関数 クラスファイルをサポートテストケース作成変数のタイプのチェック結果の数値が指定の範囲内警告が出ないかどうかテスト実行 :runtest 共有化 ドキュメント レポートの自動生成 [ パブリッシュ ] タブ パブリッシュ MATLAB アプリ (2012b) [ アプリケーション ] タブ アプリケーションのパッケージ化 カスタムToolboxのパッケージ化 (2014b) [ ホーム ] タブ アドオン ツールボックスのパッケージ化 アプリケーション (exe) の配布 MATLAB Compiler [ アプリケーション ] タブ アプリケーションコンパイラ ダイナミックライブラリ (dll) の配布 MATLAB Compiler SDK (R2015a ~ 変更 ) [ アプリケーション ] タブ アプリケーションコンパイラ 新規作成 ライブラリコンパイラプロジェクト 33