FC2ブログ

初心者によるMATLABメモ

3次元形状やってんのになぜかMATLABを使わされることになった人のメモ。

 

検索エンジンから来た方は読みたい記事が表示されていない可能性があります。
その場合、左メニューのフォームでブログ内を検索すると見たい記事を見れると思います。
もしくは、カテゴリー名をクリックしていただくと各カテゴリーの記事のリストが見れます。

[小技] OSの環境変数を使用する

MATLABを使っていて、OSの環境変数を使用できると便利な場面が意外とあると思うのですが、そんな場合はgetenvを使用することで簡単に実現できます。
N = getenv('環境変数名')

例えば、自分はシミュレーションを複数の計算機でかけてるんですが、進捗状況メールがどの計算機から送られてきたのか混乱することも度々…
ということを繰り返した結果、今では進捗状況をメールするときに下記のようにサブジェクトにコンピュータ名を含めています。
subject = strcat(['[', getenv('COMPUTERNAME'), ']', 'テストメール']);


一応書いておくと、Windowsの場合は環境変数が見たければ、コマンドプロンプトで「set」コマンドを引数なしで実行すれば見れます。

参考:MATLAB 関数リファレンス - getenv
スポンサーサイト



テーマ:MATLAB - ジャンル:コンピュータ

このエントリに付けられたタグ|MATLAB環境変数getenv小技

[小技] MATLABからメールを送信する

意外と知らない人もいますが、MATLABからメールを送信することができます。
これが意外と便利なので紹介しておきます。
例えば、どれくらいかかるかわからない長い計算をかけている場合、「終わったかな?」とわざわざチェックするのは面倒です。
そこで、僕は計算が終わったらメールが来るようにしています。

以下、MATLABからメールを送信する方法です。
まず、基本的なSMTPサーバ(送信用のメールサーバ)の設定を行います。
ここらへんはstartup.mに書いておくと便利でしょう。ただし、パスワードも記入する場合には取り扱いに注意してください。
% SMTPサーバの設定
setpref( 'Internet', 'SMTP_Server', 'SMTPサーバ');
% SMTPサーバでのユーザ名(必要なら)
setpref( 'Internet', 'SMTP_Username', 'ユーザ名');
% SMTPサーバでのパスワード(必要なら)
setpref( 'Internet', 'SMTP_Password', 'パスワード');
% 自分のアドレス(Fromになる)
setpref('Internet', 'E_mail', '自分のアドレス');

あとは下記のようにsendmail関数を使用すればメールを送ることが出来ます。
sendmail('相手のメールアドレス','題名','メッセージ')

また、添付ファイルをつけたい場合は以下です。
sendmail('相手のメールアドレス','題名','メッセージ','添付ファイルのパス')

その他、複数の人に送る場合、複数の添付ファイルを付けたい場合などはこちらを参考にしてください。

参考:MATLAB:マニュアル:サイバネットシステム - MATLAB Function Reference - sendmail
参考:MATLAB:マニュアル:サイバネットシステム - MATLAB Programming - E メールの送信
参考:初心者によるMATLABメモ| 起動時にデフォルトカラーなどを設定する (起動時にスクリプトを実行)

テーマ:MATLAB - ジャンル:コンピュータ

このエントリに付けられたタグ|MATLAB小技メール送信sendmailsetprefsmtp