近藤研便利帖



近藤先生が自ら執筆した学生のためのファイル・メールを大公開!!
さらに、学生たちが作成した小ワザをメモしたページでもあります。

貴方の研究生活に役立つこと間違いなし!!

※多少似たようなファイルが存在するので取捨選択は各自でお願いします


近藤出版

1.なぜフィードバック制御が使われるのか? [pdf]
2.動的システムの安定性と過渡応答 [pdf]
3.状態フィードバックによる極配置 [pdf]
4.オブザーバによる状態変数の復元 [pdf]
5.PID制御 [pdf]
6.ACモータのモデリングと制御 [pdf]
7.LU分解を利用した過渡現象の解き方 [pdf]
8.双対回路と電力変換回路 [pdf]
9.電力変換と制御 [pdf]
10.電力変換の応用 [pdf]
11.複素数の復習 [pdf]
12.電磁気学参考書     [pdf]
13.論理の基礎 [pdf]
14.制御の勘所(1〜5をまとめて再編集いたしました。) [pdf]
15.ひっそり公開:「LaTeX便利帖」 [pdf]
16.MS-Word付属の数式エディタの便利帖 [pdf]
17.電力変換の応用-発表資料 [pdf]

▲TOPに戻る


Cプログラムソース

日付 題名
2003/06/20 Numerical Recipes の使い倒しかたの例題
2003/06/20 C言語で行列計算
2003/01/09 ひずみを含む三相交流のくるくる回り
2002/12/10 RL直列回路の電流PI制御
2002/12/06 GrWinを使ったoscillo_sub 0.01版
2002/12/05 IMのPQ
2002/08/05 お中元:16進数のテーブル作成プログラム
2002/07/31 続:Newton法による逆数とルート計算Cプログラム 整数版
2002/07/30 Newton法による逆数とルート計算Cプログラム
2002/07/29 2乗の和のルート:面白い計算法
2002/07/15 IM および PM のシミュレーションGrWIn.libによるグラフプロットつき
2002/07/13 GrWinグラフィクス・ライブラリの使い方
2002/05/30 巻線形誘導機を三相のまま解くC++プログラム:中林の実験シミュレーション
2002/05/21 C++ simulation program for 3 phase Conv/Inv system with small dc link capacitor
2002/05/02 C++プログラム:ファイルからデータを読み取る(凝った作り方)
2002/04/23 C言語による数値計算プログラム(その2)
2002/04/23 C言語による数値計算プログラム
2001/11/26 C++で数表を書いたり,読み込んだりする例題
2001/11/03 matlab版ルンゲクッタ4次法の関数
2001/10/31 1次ローパスフィルタを多段接続したLPFのC++ソース
2001/10/27 PMモータのシミュレーション クラス使わない新ルンゲクッタ法のCPPソース
2001/10/24 位相が飛ばない正弦波発生
2001/10/18 PMモータのシミュレーションwithクラス版ルンゲクッタ法のCPPソース
2001/10/18 ルンゲクッタ法のCPPソース
2001/10/17 三相方形波(改造)分布巻線に歪波電流を流した時の空間高調波のグラフ化
2001/10/16 三相正弦波分布巻線に歪波電流を流した時の空間高調波のグラフ化
2001/06/20 C++シミュレーションに組み込めるフィルタのソース
2001/04/19 誘導電動機のすべり周波数形ベクトル制御のプログラム
2001/04/11 巻線形誘導電動機のシミュレーションプログラム
2000/12/30 Cでの行列計算

KondoLab.小ワザ集

  
日付 題名
2006/04/24 Thunderbird v1.5を使う前のお約束(添付ファイル関連)
2005/07/08 近藤研の報告書の MS-WORD 用テンプレート
2004/07/16 ファイル名やフォルダ名に和文字を使うな!
2004/04/22 MS-WinXPに他人が入れないようにする方法
2004/03/11 M$-Wordの図で塗りつぶしを背景色に合わせる方法
2004/02/23 MS-Windows XP Professional でセキュリティを使う
2004/02/20 無料のTeX吐く数式エディタ
2004/02/19 Meadow と Cygwinを仲良くさせる
2004/02/10 Cygwin用のTgif, Canna, kinput2, Xbin
2004/01/06 Matlabで複素平面の単位円を真円にする
2003/11/22 Win2kとXPでCtrl/CapsLockおよびEsc/半角を入れ替える
2003/10/31 GhostscriptでEPSをTIFに変換するバッチ
2003/10/08 電子メールファイルの移行方法
2003/10/08 VisioからEPS,TIFFファイルに変換する方法
2003/10/03 InfranViewでdvioutが作る図のpbmファイルが見える
2003/09/30 Matlabのボード線図の周波数軸をHz単位にする
2003/09/30 Matlab ver6.5R13 simulink のフリーズを回避する方法(代数ループに関して)
2003/09/03 AL-Mail32 ver.1.13 の文字化け対策法
2003/09/03 指が emacs になれてしまった人へ
2003/08/20 xyzzyエディタのユーザは,MSワードの文法・スペルチェッカを使えます
2003/05/16 秀丸用のTeXマクロをくれるところ
2003/05/16 数式エディタもどきのTeX用数式作成ソフトはここでもらえ!
2003/03/21 電気学会投稿論文本体を作る時の注意
2003/03/11 ファイル管理ソフトURL
2003/01/07 kondo の リンク集
2003/01/07 Acrobatの設定について
2002/12/06 wordの段落番号について
2002/12/03 gnuplot の起動バッチファイル
2002/12/03 Win2000 DOS窓でTABによる補完を使えるようにする
2002/11/19 M$ワードで数式自動連番!!!
2002/10/19 Visioの図をepsにする!日本字,シンボルOK
2002/10/18 dvipdfmで図入りのpdfを作る
2002/10/04 フリー数式エディタTeXaide=MathTypeもどき
2002/09/03 CTRL CAPS (vine linuxキーの入れ替え)& CTRL CAPS (linuxキーの入れ替え)
2002/05/28 MS-Wordからの印刷
2002/02/26 visioのサイン波形あげます
2001/11/15 GSL version1.0 を置いときます
2001/09/11 gccマニュアル入手先
2001/07/16 MS Word 数式エディタの書式
2001/07/13 symbolic math
2001/07/11 MSwindowsのエクスプローラを使い倒す
2001/07/10 便利なフリーソフト
2001/06/18 パワエレの参考書

Cでの行列計算


行列の計算は,Matlab を利用するべきですが,
どうしてもCプログラムを作りたいときは,添付を参考にしてください。

****行列計算のCプログラムパッケージ****
適当なディレクトリに解凍して,Visual C++ ver.6 でコンパイルできます。

..\matCon\mat_con.dsw をダブルクリックすれば,Visual C++ で開く。

ソースプログラムは,すべて,..\matCon\src にある。
バイナリは,すべて,..\matCon\bin にできる。

..\matCon\src 中の ***.main.c という名前には,main()がある。

各プログラムの簡単な説明。(100行100列程度ならこの位でよい。)
matio.main.c 行列の入出力
mat_add.main.c  2つの行列の和
mat_sub.main.c 2つの行列の差
matmult.main.c 2つの行列の積
determinant.main.c 1つの行列の行列式の値
matinverse.main.c 1つの行列の逆行列
matinv_rand.main.c 1つのランダム行列を作製して逆行列を計算。
             計算時間の計測つき。
matMenu.c 上記のプログラムをメニューで選択しながら,実行。

追伸:
C++を使うならば,TNT(Template Numerical Toolkit)
http://math.nist.gov/tnt/
を使うべきです。行列計算が C = A + B; などと書ける。
しかも,複素数や float, int の行列を自在に使える。

以上

添付ファイル:matcon1.LZH

Cプログラムソースに戻るTOPに戻る


 C言語で行列計算

C言語で行列計算するプログラム一式を添付します。
ソースは,サブディレクトリ src に全部入っている。

あなたの知らないC++は一切使っていません!
C言語だけでも,結構いけることを理解して欲しい。

解凍して,mat_con.dsw をダブルクリックすれば動く。
後は,自分で勉強してください。
もっとも簡単なのは,mat_add.c (行列の和)かな?

なお,ソースのほとんどは,Numerical Recipes
からのパクリです。(本は,青山君に見せてもらえ!)
(Numerical Recipes を全部欲しければ,昔の名前
が PWM というパソコンに入っているはず…)

数値計算の専門家が,Numerical Recipes のことを
ぼろくそに言っているから,どうも
という人は,キーワード gsl で googleれ(英語だよ)。
Visual C用のバイナリもタダで貰えるから。
行列,固有値,FFTなど,何でもあり,文句はないはずだ!
gsl は,全部C言語で書いてあるが,解読しようなどと
無謀な努力はしないこと。Cとプリプロセッサの汚い裏技を
いっぱい使ってあるから,とても歯が立たないはずだ。
ちゃんと計算してくれるから,お任せすればよい。

添付ファイル:mat_con.LZH

Cプログラムソースに戻るTOPに戻る


C++シミュレーションに組み込めるフィルタのソース

C++のフィルタのソースをあげます。
使い方は,filter2t.cpp のおわりのほうに,例題が書いてあります。

以上

添付ファイル:filter2t.cpp, filter2t.h

Cプログラムソースに戻るTOPに戻る


 1次ローパスフィルタを多段接続したLPFのC++ソース

竹内君が作った,1次ローパスフィルタを4段直列にした
ソースをパクッて,C++のクラスを作ったのであげます。

使い方,および,アルゴリズムの間違いは
竹内君に言ってください。

filter2t.cpp (2次のLPF, BPF)は双一次変換でしたが,
今回の1次ローパスは,お手軽なオイラー近似です。
PWMインバータの電圧・電流のグラフ化などに使って
見てください。

添付ファイル:cls_lpf1st1.LZH

Cプログラムソースに戻るTOPに戻る


matlab版ルンゲクッタ4次法の関数


ご要望のありました ルンゲクッタ4次法 rk4( ) の
matlab版をあげます。

mainRLCsin1.m : RLC直列回路に正弦波電圧を印加
            したときの過渡応答(メイン スクリプト)
rk4.m              :  ルンゲクッタ4次法(関数)
dxdtRLC1.m  :  RLC直列回路の微分方程式(関数)

mainRL1.m      :  RL直列回路のステップ応答(メイン スクリプト)
didtRL1.m       :  この回路の微分方程式(関数)

上の二つのメインでは matlab 標準の微分方程式ソルバ
ode45(  ) と同時に実行するようにしてあります。

rk4( ) ではグローバル変数で,回路定数と電圧を
微分方程式の関数に渡しているのが,なさけないです。
ode45(  ) のように,options 引数の後に可変引数で
パラメータなどを渡せるといいのですが,速度が遅くなり
そうなのでやめました。

添付ファイル:runge.lzh

Cプログラムソースに戻るTOPに戻る


C++で数表を書いたり,読み込んだりする例題

C++でファイルに数表を書き出したり,読み込んだりする
例題ソースを添付します。

添付ファイル:rwFile_main1.cpp

Cプログラムソースに戻るTOPに戻る


C言語による数値計算プログラム

C言語による数値計算プログラムを
  \\pwm.nagaokaut.ac.jp\KONDO\SoftForWin\NumRecipi
に置いておきます。
 (逆行列,LU分解,特異値分解,補間,関数積分,Chebyshev近似,
  ガンマ関数,ベッセル関数,乱数,ソート,Newton-Raphson法,
  関数の最大最小,線形計画法,対称行列の固有値,FFT,カイ2乗検定,
  Runge-Kutta法,2点境界値問題 など。。。。)

次の4つだけ自分のコンピュータにコピーすればよい。
 (1)NRICO       (アイコンファイル)
 (2)NRC208H.HLP (MS-Windowsのヘルプファイル,ダブルクリックでヘルプが出る。)
 (3)NRCOPY.DLL  (上のヘルプファイルからソースを取り出すときに必要。)
 (4)Numerical Recipes in C  (ダブルクリックすれば,原書を無料で読めるぞ!)
        http://www.ulib.org/webRoot/Books/Numerical_Recipes/bookcpdf.html

下記のディレクトリの内容は, 
..\NumRecipi\src, exaple, include, src, dat は,NRC208H.HLPから
取り出したファイルです。上の(1)−(3)があれば,自分で取り出せる。

参考書:"Numerical Recipes in C"
和訳「ニューメリカルレシピ・イン・シー」
   技術評論社,丹慶,奥村,佐藤,小林訳
   1993年,4900円

Cプログラムソースに戻るTOPに戻る


C言語による数値計算プログラム(その2)

2次の微分方程式を Numerical Recipes のルンゲクッタ法 rk4.c
を使って解くプログラムを添付します。

こんな汚い技も使えるという見本です。

追伸:杉戸君へ
 こうやって解くんだぜ!

以上

添付ファイル:dirty_main3.cpp

Cプログラムソースに戻るTOPに戻る


 C++プログラム:ファイルからデータを読み取る(凝った作り方)

テキストデータファイルから,データを読み出すC++プログラムの
例題を添付します。

かなり凝った作り方をしていますが,C++を勉強し始めた人の
参考にはなるでしょう。

追伸:
B4生は,Cプログラムを早く自分で書けるようになること!

以上。

添付ファイル:readFileData1.LZH

Cプログラムソースに戻るTOPに戻る


C++ simulation program for 3 phase Conv/Inv system with small dc link capacitor

The file attached to this mail is a simulation program
for 3 phase Conv/Inv system with a very small dc link
capacitor ( 10uF ). The simulation to calculate transient
state variables for 0.2sec takes only 5.2sec CPU time.
This may be faster than PSIM.

Ask Mr. Hirota about usage of cls_PID & gnuplot.

Cプログラムソースに戻るTOPに戻る


巻線形誘導機を三相のまま解くC++プログラム:中林の実験シミュレーション

巻線形誘導電動機の動作を,dq変換を使わないで,三相のまんまで解析する
C++プログラムをあげます。

つまり,中林君がやった実験(ロータのa相だけ抵抗を2倍)のシミュレーション
です。すべり周波数の2倍周波数でステータ電流が脈動することを,確認できる。
((ただし,誘導機の定数は,中林君の巻線IMのものがわからないので,
  野口先生の博士論文から借用した,2kW かご形IM(東芝製,回転機室,銀色)
  のものです。))

回路方程式は,求めたばかりのため,まだバグが潜んでいるかも知れません。
中林君,チェックしてくれ!

添付ファイル:IM3direct1.LZH

Cプログラムソースに戻るTOPに戻る


GrWinグラフィクス・ライブラリの使い方

C および C++ で手軽にグラフィックを使えるソフト
GrWinグラフィクス・ライブラリ の使い方サンプルを添付します。

http://spdg1.sci.shizuoka.ac.jp/grwinlib/

Visual C++ 6, MinGw, cygwin, Borland C++ などに対応しています。
VC6 と MinGw は,全く同じソースで動くことを確認しました。
手持ちのプログラムにチョコチョコと書き足すだけで,
計算中にぐるぐる動くグラフが描けます。

以上

添付ファイル:oscilloscope1.lzh

Cプログラムソースに戻るTOPに戻る


IM および PM のシミュレーションGrWIn.libによるグラフプロットつき

GrWin.lib+oscillo_sub.cpp&h を使った誘導機およびPMモータの
シミュレーションプログラムを添付します。

誘導機:main関数の第1行目を = 0, または,= 1にすると制御則が
    変わる。
     int main(void)
     {
         int vector_or_vf = 1; // 0-vector cotrol, 1-v/f=const. control    

    制御則を切り替えてグラフを見ていると,
    (A)ベクトル制御では,ロータ磁束鎖交数(x軸の正方向にある)
       が変わらないことが分かる。==>トルク応答が速い!
    (B)V/F制御ではロータ磁束鎖交数の大きさが変化する。
       ステータ電流(右上方向),ロータ電流(下方向)のベクトルが
       ふらふらする。この結果,トルクの応答が悪くなり,
       速度制御のゲインを大きできず,速度の応答が遅い。

PMモータ:ステータ電流のq軸(上方向が正)成分が流れたときに,
      ロータ速度(グラフ下半分)が加速しているのがわかる。
           この程度のことは,gnuplot や origin のグラフでも分かるから,
      GrWin.libをくっつけるのは邪道かもしれない。。

バグ修正の情報:<<中林君と青山君は(2),(3)を忘れないこと。>>
(1)oscillo_sub.c 中で下記 //ver.0.01の行のように修正
void osc_sleep( double wait_sec )
{ // 指定された秒間だけ待機する。最小は 0.001 [s]
    clock_t goal, wait=(clock_t) (wait_sec * CLOCKS_PER_SEC); // ver.0.01
    clock_t goal, wait=(clock_t) wait_sec * CLOCKS_PER_SEC; <<==誤り

    括弧がないと,wait_sec<1.0以下の時,(clock_t)wait_set ==> 0 になり,
  ちっともスリープしなかった。ゴメン!

(2)class cls_ODEbase 中で下記 // ver.3.11 の行のように修正
    // ~cls_ODEbase()      <=== virtual を先頭につけなければならない
  (仮想クラスでは,仮想ディストラクタが必要!
   VisualC++は見逃してしまうが,GCCでは警告がでる! MicroSo..のアホ!)

    virtual ~cls_ODEbase() // ver.3.11 by SK
        {
            delete [] xt;
            delete [] dxt;
            delete [] dxm;
  または,
    // ~cls_ODEbase() { delete [] xt; delete [] dxt; delete [] dxm; }
    virtual ~cls_ODEbase() { delete [] xt; delete [] dxt; delete [] dxm; } // ver.2.11

(3)クラス cls_IM および cls_PM のディストラクタで,
      delete V ===> delete [] V などのように, [] を追加する。
   (newで動的配列を確保したら,delete するときも配列開放する。)

    ~cls_IM()
        {
            // delete V;
            // delete m_dxdt;
            // delete m_x;
            delete[] V;      // ver.3.11 動的配列の開放
            delete[] m_dxdt;
            delete[] m_x;
        }
  または,
  // ~cls_PM() { delete V, delete m_dxdt; delete m_x; }
    ~cls_PM() { delete[] V, delete[] m_dxdt; delete[] m_x; } // ver.2.11

(4)GrWin.lib を併用する場合は,<iostream.h> ヘッダ等を使うとライブラリが
   衝突する。このため,<stdio.h>を使うように戻した。(変更箇所いっぱい!)
   ただし,GrWin.lib を使わないのならば,<iostrema.h> 使用のままでもOK.
   したがって,(4)はバグの修正ではなく,GrWin.libと併用する時の問題。
以上。

添付ファイル:PMver2121.LZH, im3_11GrWin1.LZH

Cプログラムソースに戻るTOPに戻る


2乗の和のルート:面白い計算法

本日の報告会,中林君のとき
「2乗の和のルート」=「直角三角形の斜辺の長さ」
の計算方法が話題になりました。
sqrt(x*x+y*y) ではなくて,Moler-Morrison法という面白い
やり方のC++プログラムを添付します。
もともと,下記特徴(1)+(3)のために開発された方法らしい。

特徴:
(1)普通の方法より桁あふれしにくい。
   main() 第1行目で int test_type = 2; // 1--test1, 2--test2
   としてやってみること。
(2)普通の計算法より時間がかかる。
   ただし,C++で CPU に内臓されている浮動小数演算器を使う場合。
   浮動小数演算器を内臓していないDSPでは,必ずしも,普通の方法
   より遅いとはいえないと思う.....?????
(3)加減乗除の4則演算だけでよい。<==面白い!!
   ルートの計算をニュートン法でやるよりいいかも.....?????
   ただし,割り算をニュートン法でやるなら,ルートもニュートン法に
   したほうがスマートかも.....?????

添付ファイル:hypot1.cpp

Cプログラムソースに戻るTOPに戻る


Newton法による逆数とルート計算Cプログラム


割り算を使わないで,逆数とルートを計算するCプログラムを
添付します。

DSPで割り算やルートの計算をするときの参考にしてください。

添付ファイル:newton1.c

Cプログラムソースに戻るTOPに戻る


続:Newton法による逆数とルート計算Cプログラム 整数版

昨日の割り算を使わないで,逆数とルートを計算するCプログラム
(実数版)に引き続き,整数版を(newton_int.c)添付します。

逆数はまあまあ動きますが,ルートは駄目駄目です。
(誰か,修正に挑戦して欲しい!)

なお,逆数の計算に ONE で割るところの実装は,
ONEを2の冪乗にして,右ビットシフトで逃げられるはずです。

以上

添付ファイル:newton_int1.c

Cプログラムソースに戻るTOPに戻る


お中元:16進数のテーブル作成プログラム

1/sqrt(x) や sin(x) の16進数テーブルを作るCプログラムを添付します。

invsqrt.c --- 1/sqrt(x) を h.dat に書き出す。
sintabel.c -- sin(x) を h.dat に書き出す。
ishexok.c  -- h.dat を読み込んで,10進数に変換して,h2.datに書き出す。

以上。

添付ファイル:invsqrt.c, sintabel.c, ishexok.c

Cプログラムソースに戻るTOPに戻る


 IMのPQ

誘導機のシミュレーションプログラムをあげます。

    int vector_or_vf = 3;   
   // 0-vector cotrol(電流型), 1-v/f=const. control
      // 2-v/f + Q Vamp control, 3-volt vector(電圧型)

インバータは付いてない。理想電圧源としてある。
GrWin.lib, gunplot を使用する。

添付ファイル:graph.doc1.lzh, im3_3PQ1.LZH

Cプログラムソースに戻るTOPに戻る


 GrWinを使ったoscillo_sub 0.01版

GrWin.lib を使ったオシロ oscillo_sub.cpp, oscillo_sub.h
のversion 0.01 を添付します。

version 0.00 と上位互換性あり。GrWin.lib は前と同じものでよい。

テキストの色つき出力や,数値入力ができるようになりました。

以上

p.s.
GrWin_keyinput.LZH が動かなかったら,
いっしょに入っている「古い使い方.txt」をよく読め!

GrWin.lib と GrWin.h のある場所を,Visual C++ に
ちゃんと教えないと,動かない!

添付ファイル:GrWin_keyinput1.LZH

Cプログラムソースに戻るTOPに戻る


RL直列回路の電流PI制御

直流電圧源で,RL回路の電流をPI制御するプログラムを
あげます。

新しいのは,
(1)PIDのP項,I項,D項のそれぞれの大きさが見える。
(2)PIDゲインをDOS窓で変えられる。

以上。

添付ファイル:pidRL1.LZH

Cプログラムソースに戻るTOPに戻る


ひずみを含む三相交流のくるくる回り

歪みを含む三相交流電圧の高調波が逆回転(5次)したり,
正回転(7次)したりするプログラムを添付します。

以上

添付ファイル:3phaseHarmonics1.ZIP

Cプログラムソースに戻るTOPに戻る


Numerical Recipes の使い倒しかたの例題

ニューメリカルレシピにあるソースを使い倒す
例題を添付します。

ps. 杉戸君! 後輩にちゃんと教えておいてくれ!
   M1,B4の諸君は,M2がもっといろいろ
   なプログラムを持っているはずだから,もらえ!

去年は,いろいろなソースを送ったが,学生が怠け者に
なるので,今年は送らない!
(。。。と言いながら,送っている,矛盾!)

添付ファイル:dirty_main5.cpp

Cプログラムソースに戻るTOPに戻る


PMモータのシミュレーション クラス使わない新ルンゲクッタ法のCPPソース

クラスを使わない新しいルンゲクッタ法を内臓したPMモータの
シミュレーションプログラムをあげます。
(((ただし,PIDとInverterにはクラスを使っている。)))

LZH中の2つのファイルを同一フォルダに置いて
コンソールプログラムとしてコンパイル,実行。

不幸にして gnuplot を持っていない人は,
cppの最後から2行目
     system("gnuplot plotcmd.txt");  // gnuplot でグラフを描く
をコメントにしてください。
そうしないとWin98はぶっ飛ぶぞ!!

添付ファイル:PMmotorV22.LZH

Cプログラムソースに戻るTOPに戻る


位相が飛ばない正弦波発生

C++のクラスなんか怖くない!
添付ファイルを 名前を cont_cos としたディレクトリ
(どこにおいてもいい)に解凍して,
出て来た cont_cos.dsw をダブルクリックするだけ!!

位相が飛ばない正弦波発生器を自分で実装できた
君なら,簡単に理解できるはずだ!!

添付ファイル:cont_cos.LZH

Cプログラムソースに戻るTOPに戻る


PMモータのシミュレーションwithクラス版ルンゲクッタ法のCPPソース

クラス版のルンゲクッタ法を内臓したPMモータの
シミュレーションプログラムをあげます。

LZH中の2つのファイルを同一フォルダに置いて
コンソールプログラムとしてコンパイル,実行。

不幸にして gnuplot を持っていない人は,
cppの最後から2行目
     system("gnuplot plotcmd.txt");  // gnuplot でグラフを描く
をコメントにしてください。

添付ファイル:PM_ver2_1_main.LZH

Cプログラムソースに戻るTOPに戻る


ルンゲクッタ法のCPPソース

ルンゲクッタ法のCPPソースをあげます。
LZH中の3つのファイルを同一フォルダに入れる。
コンソールプログラムとしてコンパイルすれば実行できる。

例題は,正弦波発信機(2次の微分方程式)です。

古いCの書き方しか使ってない。関数ポインタに注意!
クラスを使ったバージョンが欲しければ言ってください。

添付ファイル:RungeKutta.LZH

Cプログラムソースに戻るTOPに戻る


三相正弦波分布巻線に歪波電流を流した時の空間高調波のグラフ化

三相正弦波分布巻線に歪み波電流を流したときの
起磁力空間分布をグラフ化するプログラムを
Matlab で作ったのであげます。

(1) 解凍してできる3つのファイルをどこでもいいから
   同じフォルダに置く。
(2) main.m を matlab で実行する。
   command ウィンドに出て来る質問に答える。
(3) main.m の中の
    highord = 7;        % 高調波の次数 order
   を3の倍数にすると,時間波形は歪むのに
   起磁力の空間分布は基本波だけで決まる!
   あたりまえだけど,目で見ると面白い???
以上

添付ファイル:spaceMMF.LZH

Cプログラムソースに戻るTOPに戻る


三相方形波(改造)分布巻線に歪波電流を流した時の空間高調波のグラフ化

昨日上げたプログラムを
集中巻きコイル用に改造したので,あげます。
今日のを解凍すると4つソースが出て来る以外は,
下記と同じ。

添付ファイル:recSpaceMMF.LZH

Cプログラムソースに戻るTOPに戻る


誘導電動機のすべり周波数形ベクトル制御のプログラム

添付のプログラムを勉強しておくこと。

添付ファイル:im3_0.LZH

Cプログラムソースに戻るTOPに戻る


巻線形誘導電動機のシミュレーションプログラム

巻線形誘導電動機のシミュレーションプログラムを添付します。

必要なソフト:
必須:グラフ描画ソフト gnuplot
    http://www.h2.dion.ne.jp/~yamaga/gnuplot/index.ja.html
あると大変に便利:解凍ソフト winzip
  http://www.panda.co.jp/winzip/index.html
あると少し便利: cygwin
  http://matsu-www.is.titech.ac.jp/~sohda/cygwin/#setup
  を見てください。

使い方:
(1) lhmelt などを使って,ディレクトリ付で解凍する。
    解凍先は,どこでもよい。
    すると, im2_1b というディレクトリが出来て,その中に
    プログラム一式が解凍される。
(2) 出来るファイルは次のとおり。
<ソース 6個>
IM_ver2_1_main.cpp  : シミュレーションプログラム本体
cls_IM_incl.cpp     : 巻線形誘導電動機の状態微分方程式と
                いろいろな関数を含むクラス
cls_ODEbase_incl.cpp : 上のクラスの元になる仮想基底クラス
cls_PID_incl.cpp    : PI補償器のクラス
cls_speedCTL.cpp   : 速度制御器のクラス
mathConstants.h   : 円周率パイ
<実行形式>
Debug\im2_1b.exe   : visual c++ version6 でコンパイルした
               (下の im2_1b.dsw をダブルクリック)
a.exe          : cygwinのg++ (version 2.95.3-1)でコンパイルした
               (コマンドライン $ g++ IM_ver2_1_main.cpp)
<テキストファイル>
outIMsim.dat     : シミュレーションプログラムが出力する結果の表
plotcmd.txt      : グラフ描画ソフト gnuplot へのコマンドファイル

graph1.eps      : ghostscript, gsview があれば,下の方にグラフがある
graph1tgif.obj    : gnuplot が吐き出した tgif
<マイクロソフト visual c++が使うもろもろのファイル>
im2_1b.dsp     : プロジェクトファイル
im2_1b.dsw     : ワークスペース こいつをダブルクリック
im2_1b.ncb     : 知らない
im2_1b.opt     : 知らない
im2_1b.plg     : 知らない

以上

添付ファイル:im2_1b.LZH

Cプログラムソースに戻るTOPに戻る


パワエレの参考書

パワエレの参考書のリストを配布します。
その中の,5・6・8番を持っていれば良いと思います。
もう1冊追加するとすれば,7番です。

以上

添付ファイル:powerele.doc

小ワザ集に戻るTOPに戻る


便利なフリーソフト

近藤のコンピュータ更新を記念して,秘蔵のブックマークを公開します。

(1) ファイルのバックアップ = 「ディスクミラーリングツール」
    http://www5.wisnet.ne.jp/~mercury/
(2) emacs ライクのエディタ = 「xyzzy」
    ダウンロード: http://www.jsdlab.co.jp/~kamei/
    説明: http://www1.mirai.ne.jp/~gyo/xyzzy/xyzzy-list.html
         http://www.carabiner-systems.com/xyzzy/
(2b) 日本語化 emacs = 「Meadow」
    解説: http://kawacho.don.am/win/meadow/index.html
    ただし,プリントアウトは出来ないと思ったほうがよい。
(3) グラフ書き = 「gnuplot」
    ダウンロード: 
http://www.h2.dion.ne.jp/~yamaga/gnuplot/index.ja.html
    使い方説明: http://art.ence.kyushu-u.ac.jp/members/kawano/gnuplot/
(3b) C/C++から使えるグラフィックライブラリ = 「glibw32」
    ダウンロード: http://www.asahi-net.or.jp/~UC3K-YMD/index.html
    使ったことない!
(4) C++から使える行列計算ライブラリ = 「TNT」
    説明とダウンロード: http://math.nist.gov/tnt/index.html
(5) なんでもありのC言語の数値計算ライブラリ = 「gsl」
    説明: http://sources.redhat.com/gsl/
    最近は,Microsoft の Visual C++ でも使えるみたい。(試してない!)
    元々は,Windows に cygwin をインストールして使うのが正統派。
(5b) Windows で UINX みたいなことをするには = 「cygwin」
    藤本先生に聞こう!
    説明: http://www.jaist.ac.jp/~fujieda/cygwin/
(6) htmlファイルの書き方
    http://homepage.mac.com/toda/html/

小ワザ集に戻るTOPに戻る



MSwindowsのエクスプローラを使い倒す

エクスプローラを起動したとき,自分のフォルダhogehogeで始めるには,

c:\{windows | winnt}\explorer.exe /n,/e,{d:\users\hogehoge}

エクスプローラの起動オプションの説明 : j0240_26.html

小ワザ集に戻るTOPに戻る


MS Word 数式エディタの書式

MS Word の数式エディタの書式を,
添付ファイルのように設定するようにして下さい。

ファイルをコピーしたとき,式の書式が各自で異なると,
大変見苦しくなります。

なお,文字のサイズを変えたいときは,
数式エディタ>メニュー>サイズ>文字のサイズ
の一番上にある,標準 (10.5 pt) を,
変更するするだけで,連動して他のサイズも
変わります。

添付ファイル:eqediter.doc

小ワザ集に戻るTOPに戻る


gccマニュアル入手先

http://www.sra.co.jp/wingnut/gcc/gcc-j.html#Top

小ワザ集に戻るTOPに戻る


ワードで○囲み文字

MSワードで文字を丸などで囲む方法は,
添付ファイルを見てください。

添付ファイル:marukakomi.doc

小ワザ集に戻るTOPに戻る


GSL version1.0 を置いときます

誘導機の部屋にある pwm.nagaokaut.ac.jp (通称 CDR)の
おそらく Gドライブ中の
hokan\kondo\SoftForWin\GNU_scientific_lib の中に
Gnu_Scientific_Lib (GSL) version1.0 を MSVC++でコンパイル
したライブラリを置いときます。

「\このディレクトリ中のGSLを丸ごとコピーすればよい」
の中にある GSL ディレクトリ以下を
あなたのコンピュータにコピーすれば使えます。
どこにコピーするか,および,MSVC++の設定の仕方は,
README.txt に書いてあります。

MSVC++用の入手先は次のとおり。
http://www.network-theory.co.uk/gsl/freedownloads.html
ネット不調で gsl-1.0-setup.exe はダウンロードできない。
ソースをダウンロードして作った。

gcc 用は次の場所からもらったほうがよいと思う。
http://sources.redhat.com/gsl/

小ワザ集に戻るTOPに戻る


visioのサイン波形あげます

visioのステンシルサイン波をあげます。
使い方は,小原君に教えました。

添付ファイル:SKmain.vss

小ワザ集に戻るTOPに戻る


MS-Wordからの印刷

MS-Word2000から印刷したとき,ギリシャ文字等が化ける問題の
解決方法を思い出しました。したがって,野口先生のプリンタで
印刷していただく必要はなくなりました。
お騒がせしました。

ご参考までに,方法を下記しておきます。
MS-Word 2000利用のヒント
(1) 画面表示は正しいが,印刷すると(ギリシャ)文字が化ける場合
  <対策>プリンタフォントでなく,TrueTypeで印刷する。
    <方法>EPSON LP-1900の場合は次のようにする。
      印刷>(プリンタ名の右側)プロパティ>環境設定>
      (ドライバの)拡張設定>TrueTypeフォントの欄
      「TrueTypeフォントでそのまま印刷」を選択する。
  <注意>「設定したフォントだけプリンタフォントで印刷」を
    選択すると,ギリシャ文字等が化けることがある。
    キャノンのプリンタでも上記の<方法>と似たようなことが
    出来たはず。(ただし,印刷は少し遅くなる。)
以上。

小ワザ集に戻るTOPに戻る


CTRL CAPS (vine linuxキーの入れ替え)& CTRL CAPS (linuxキーの入れ替え)

>  さっそくやってみましたが,vineではターボとディレクトリ(ファイル構成)が違うようで,
> コンソールモードのキー変更方法にあるようなファイルを発見できませんでした。
>  
>  もうひとつのXでの変更方法もやってみましたが,変更できませんでした。
> そのかわりネットで簡単な変更方法を見つけましたので,お知らせいたします。
>
>  /etc/sysconfig/keyboard に
>        KEYTABLE="jp106 jp106_Ctrl_CAPS"
> と書くだけです。これだけで,コンソールもXも両方変更することができました。
> vineではCtrlとCAPSが入れ替わっている
>  /usr/lib/kbd/keytables/jp106_Ctrl_CAPS.map.gz
> を標準で持っているようです。
>
> 参考ホームページhttp://www.d1.dion.ne.jp/~khiyama/linux/vine-setup.html
> まんなか辺りにkeybordという項で書いてありました。
>
> 以上
>
>
>
>
> KONDO Seiji さんは書きました:
> >  近藤@パワー研.電気系.長岡技大 です。
> >
> >野口研 相澤君,斎藤君
> >
> >  linux で CTRLキーとCAPSキーを入れ替える方法,
> >  藤本先生のメールを転送します。
> >
> >大石研のlinuxの達人の方
> >
> >  もっと,いいやり方があったら,パワー研メンバに
> >  連絡してください。
> >
> >追伸:
> >  私のtubolinux7では,X Window 設定ツール tuboxcfg の中に
> >  [CapslockキーとControlキーの入れ替え]という項目があったので,
> >  それを使いました。つまり,下の方法は試しておりません。
> >
> >以上
> >
> >++++++++++++++++++++++++
> >On Mar 14, 2002 00:13:23 +0900
> >Hiroshi Fujimoto wrote:
> >++++++++++++++++++++++++
> >
> >近藤先生、
> >
> >藤本です。遅くなって申し訳ございません。
> >TurboLinuxでCTRL とCAPSを入れ替えるには
> >私は以下のページを参照しました。
> >
> >http://www.turbolinux.co.jp/knowledge/public/7.html
> >
> >具体的には、
> >cd /usr/lib/kbd/keytables
> >gunzip jp106.map.gz
> >xemacs jp106.map
> > 58と97を入れ替え、
> >gzip jp106.map
> >
> >さらにXでの環境設定は、
> >/usr/X11R6/lib/X11/xkb/keycodes/xfree86
> >のFor japanese 106 keyboardに該当する箇所の
> ><CAPS>と<LCTL>を入れ替えました。
> >
> >上記WEBページには、Turbolinux6.1までが対象と

小ワザ集に戻るTOPに戻る


フリー数式エディタTeXaide=MathTypeもどき

純正MS-WordとTexを併用する人にお勧め!
フリーのMathTypeもどきであるTeXaideのダウンロードは下記です。
http://www.mathtype.com/jp/features/taform.stm

MathTypeとの違い
(1)タダ。(サポートはない。)
(2)インストールしてもMS-Wordの数式エディタがそのまま残る。
(3)Win2000のOffice2000でも使える。MS-Wordの数式をコピー
   すれば,TeXコードに変換してくれる。
(4)ただし,MathTypeもTeXaideも,MS-Wordの数式エディタに
   は戻せない。つまり,純正MS-Word派の人が読めなくなる。
   MathTypeをもっている人は,それを使い続ければいい。
   しかし,純正MS-Word派の人から,仲間はずれにされる。
(5)使える数式シンボルは,MS-Wordの数式エディタとおなじ。
   MathTypeより少ない。

小ワザ集に戻るTOPに戻る


dvipdfmで図入りのpdfを作る

dvipdfm を使って,図入りのpdfを作る方法は,下記を参照。

http://www.matsusaka-u.ac.jp/~okumura/texfaq/pdf.html

まだ,やったことないけど。うまくいったら教えて下さい。

以上。

小ワザ集に戻るTOPに戻る


Visioの図をepsにする!日本字,シンボルOK

添付ファイル:Visioの図をepsにする方法.doc (MS−Word文書)
あげる。

以上

添付ファイル:Visiotoeps.doc


M$ワードで数式自動連番!!!

添付ファイルを試してください。

添付ファイル:eqautonum.doc

小ワザ集に戻るTOPに戻る


 Win2000 DOS窓でTABによる補完を使えるようにする

Windows 2000 のDOS窓のコマンドプロンプトで,TABキーを打つと
長い名前を補完してくれるようにするには,次のページをみよ!

http://homepage2.nifty.com/winfaq/w2k/
のページの左側にあるサイト検索で
「補完」を検索する。

下記は,上のページのコピー。

***********************
コマンドプロンプトで長いファイルやディレクトリ名を打ちたくないのですがコマンドプロンプトでファイル名
やディレクトリ名を入力するとき、最初の数文字を指定するだけで残りを補完してくれる機能があります。
例) C:\>cd Pr<TAB> と打つと、cd "Program Files" と補完されます。

この補完機能を有効にするには次の手順でレジストリを変更して下さい。
なお、Windows XP は標準で補完機能が有効に設定されています。

[スタート]−[ファイル名を指定して実行] から regedit を起動します。
HKEY_CURRENT_USER \Software \Microsoft \Command Processor にある CompletionChar の値を 9 に設定しま
す。
Tab キーでなく、<Ctrl>+D でディレクトリ名、<Ctrl>+F でファイル名を補完するためには次のように設定しま
す。(レジストリを変更する必要はありません。)

[スタート]−[プログラム]−[アクセサリ] をクリックします。
[コマンドプロンプト] を右クリックし、[プロパティ] をクリックします。
リンク先の最後に、/f:on という文字列を追加します。
例) %Systemroot%\System32\cmd.exe /f:on
なお、ファイル名やディレクトリ名の補完は、TweakUI の [コマンドプロンプト(Cmd)] タブでも設定することが
できます
***********************
以上。

小ワザ集に戻るTOPに戻る


 xyzzyエディタのユーザは,MSワードの文法・スペルチェッカを使えます

xyzzy から,MS-Word の文法チェッカ,スペルチェッカを
使うことができます。
エディタで文章を作る TeX ユーザはには,特にお勧めです。
ただし,xyzzy とMS-Word をインストールしてない
コンピュータでは,使えません。

ソフトに入手は,下記からどうぞ。

*********************************************************
word-tools.l
Author: miyamuko
Home: http://oops2.hp.infoseek.co.jp/

Microsoft Word のツールを xyzzy からありがたく使わせていただく。

・ツール - 文章校正
・ツール - 要約の作成
・ツール - 文字カウント
・ツール - その他の校正ツール - 類義語辞典
・挿入 - 日付と時刻
・ヘルプ - バージョン情報
*********************************************************

なお,xyzzy を使ったことのない人は,まず次のページへ。
http://www.geocities.jp/madoinu/xyzzy/extlib/
プリンタを使えるので,Meadow よりよいかも。
yatex もどきの,katex もあるよ。

以上。

小ワザ集に戻るTOPに戻る


gnuplot の起動バッチファイル

gnuplotを起動するバッチファイルの中身を次の2行に変更してみてください。

@echo off
start d:\prog2\gnuplot\wgnuplot.exe %*
      ^^^^^^^^^^^^^^^^^ ここは,自分の環境に合わせて変える。

これで,Cのプログラム中から
  system("gnuplot no1_cmd.txt");
  system("gnuplot no2_cmd.txt");
などとすれば,何枚もグラフをかけると思います。

小ワザ集に戻るTOPに戻る


kondo の リンク集

近藤のリンク集です。
MS.W2kのところに,MS−Windows関係のリンクがあります。

なお,数年間に渡って溜め込んできたリンク集なので,
今となっては古くなって表示されないページも含まれていますが,あしからず!

以上。

添付ファイル:bookmark20030107b1.htm

小ワザ集に戻るTOPに戻る


ファイル管理ソフトURL

卒業した村岡君が,エクスプローラの代わりに使っていた
ソフトのダウンロード先は,下記。
私は使った事がないけど,村岡君が使っているのをみた
ことがある。

以上。

In message "ファイル管理ソフトURL",
     < Shin Muraoka > wrote on Wed, 20 Feb 2002 13:18:21 +0900;
++++++++++++++++++++ BEGIN ++++++++++++++++++++++++
先ほどのフリーソフトのURLです
http://homepage1.nifty.com/k_okada/


小ワザ集に戻るTOPに戻る


電気学会投稿論文本体を作る時の注意

電気学会へ投稿する論文の本体を作るときは,
学会のホームページからダウンロードした
word98_jpn.dot ファイルを,作業する文書を
入れたフォルダ(ディレクトリ)にコピーして
おくこと。
そうしないと,便利な書式等のツールバーが
消えて使えなくなるぞ。

小ワザ集に戻るTOPに戻る


秀丸用のTeXマクロをくれるところ


http://www.ms.u-tokyo.ac.jp/~abenori/mycreate/fortex.html

で,秀丸用のTeXマクロの新しいのをくれます。使ったことないけど。

以上。

小ワザ集に戻るTOPに戻る


数式エディタもどきのTeX用数式作成ソフトはここでもらえ!


http://www.mathtype.com/jp/features/taform.stm

小ワザ集に戻るTOPに戻る


symbolic math

先日の勉強会で紹介したMatlab のSymbolic math toolbox
(代数計算、微分、積分を解析的に行える道具。Mathematicaみたいなもの。)
は使ってみたでしょうか?道具は道具に過ぎませんが、使えると
たまに得しますので、頼り過ぎないようにして使ってください。

syms s a b c Kp Ki Kd T P C

P = c/(s^2+b*s+c)
C = Kp + Ki/s + Kd*s/(T*s+1);

[num,den] = numden(1+P*C);
collect(num, s)

これで特性方程式が解析的に出てきます。

小ワザ集に戻るTOPに戻る


Acrobatの設定について

Acrobatの設定についてです。
Word文章などをPDF変換し、それをプリンターで印刷すると全体的に文章のサイズが
小さくなってしまうということがあります。
これを解決するには
AcrobatReaderのファイル>印刷で
「用紙サイズにに合わせて印刷」AcrobatReader4.0
「用紙サイズにあわせてページを縮小」AcrobatReader5.0
のチェックをはずします.
こうすることで元の文章どおりのサイズで印刷することができます。

小ワザ集に戻るTOPに戻る


wordの段落番号について

word2000を使用中、行の始めに(1)など番号をつけると改行時に
段落番号を勝手につけられる問題について解決法がわかりました。

ツール→オートコレクト→入力オートフォーマットで
箇条書き(段落番号)のチェックをはずすと直ります。

ただし、段落番号を入力する前にはずしてください。
段落番号を入力した後にチェックをはずしても解決しません。

小ワザ集に戻るTOPに戻る


指が emacs になれてしまった人へ

Emacs および その親類を使っていて,指が自動的に 動くようになってしまった人へ。
次のソフトで,MS-Wordで emacs のキーバインドが 使えるかも。
(私は試していません。うまくいったら みんなに教えて下さい。)
XKeymacs ホームページ http://www.cam.hi-ho.ne.jp/oishi/
以上。

小ワザ集に戻るTOPに戻る


AL-Mail32 ver.1.13 の文字化け対策法

[A]AL-Mail32 ver.1.13 受信すると,文字化けすることがあります。
   そのときは,次のようにすると読めるようになることかもしれません。
  (1)文字化けメールを表示する。
  (2)メニュー > 表示 > フォント で
    「書体の種類:日本語」にする。
   少なくと,私の場合は,Outlook系で,Quated-Printable で
   送ってくる「あふぉ」のメールが読めるようになりました。

[B]また,添付ファイルを送るときは,エンコード形式:Base64
   「分割して送信する」にチェックをしない!!!にすること。

[B]の約束を守らないメールは今後受け取りませんから
そのつもりで。

小ワザ集に戻るTOPに戻る


Matlab ver6.5R13 simulink のフリーズを回避する方法(代数ループに関して)

>> Kondo

添付のsimulinkのプログラムをMatlab ver6.5R13(最新版)
で実行すると,Matlab がフリーズします。

古い ver6.1R12.1では,フリーズしません。

回避策は次の通り。
(3)simulink で代数ループ algebraic loops による
   Matlab ハングを回避する。 (2003/09/30)
    メニュー>シミュレーション>シミュレーションパラメータ>
        診断>代数ループ を「エラー」に設定する。
参考:サイバネットのサポート
http://www.cybernet.co.jp/matlab/support/techkwdb/search_view.php?id=1254

以上。

添付ファイル:algebraic_loop.mdl

>> Kawakami

Matlab13.1のSimlink(Simlinkのバージョンは5.0)において、代数ループのシミュレーションを行うと
Matlabがハングしてしまいます(もちろん保存もできません)。

近藤先生より解決法をいただきました。
解決法は3つあります。

1.Matlabのコマンドラインにて   set(0,'lang','english') を実行して英語モードに切り替える。
  その後Simlinkを実行するとMatlabコマンドラインに「代数ループがありますよ?」と英語で教えてくれます。

2.Simlink画面の「シミュレーション」→「シミュレーションパラメータ」メニューよりパラメータダイアログを起動し
  「診断」タブを選択して、設定オプション「代数ループ」のアクションを’エラー’か’なし’を選択する。
  ’エラー’を選択すると代数ループを赤く表示してくれるので見やすくてよいです。

3.simコマンドを利用してコマンドラインからシミュレーションを実行する。


2番の方法が比較的わかりやすくて簡単です。

以上Simlinkで代数ループを行う場合のハング解消法でした。

>> Kondo

次のように設定しておくと,simulink のモデルを新しく作ったとき,
いつも,代数ループメッセージ=「エラー」にしてくれる。
本日お薦めの品です。
*********************************
代数ループをいつも「エラー」にするには。(デフォルトはワーニング)
Matlabのメニューで
  ファイル>設定>simulink>シミュレーション>診断 で
  代数ループメッセージ 「error」に設定しておく。
*********************************
以上

PS. Simlink ?? ==> Simulink (4つ目にu)

小ワザ集に戻るTOPに戻る


Matlabのボード線図の周波数軸をHz単位にする

Matlabの組み込み関数 bode()は,周波数軸が
rad/s 単位です。それが嫌な人は,次のプログラム
をお試しください。

plot_bodeHz.m : 周波数をHzでボード線図を描く関数。
genLCfilter.m : 上の関数を使ってみせる例題。
         単なる,LCフィルタの周波数特性です。
以上

添付ファイル:plot_bodeHz.m, genLCfilter.m

小ワザ集に戻るTOPに戻る


InfranViewでdvioutが作る図のpbmファイルが見える

InfranViewというフリーのソフト(窓の杜から)を使うと
図面を含むTeXのdvi出力を見るdvioutが作る,pbmファイルを
見ることができます。

小ワザ集に戻るTOPに戻る


VisioからEPS,TIFFファイルに変換する方法。

Visioで作成した図をEPS,TIFFファイルに変換する方法をお知らせします。
(中にはEPS,TIFFファイルは普段使用しないという人がいると思いますが,
これは海外に論文投稿する際に必要なことだそうです。)

まず,なぜそういう経緯に至ったかといいますと,知ってる人もいるかと思いますが,
Visioで作成した図を単にVisio上でEPS,TIFFファイルに保存してもシンボルが消えたりします。
(経験的にWMFファイル以外はvisioではうまく出力してくれません。)
この解決法を探った結果,一番うまくいった方法が添付ファイルで紹介している方法です。

添付ファイル:Visio_to_TIFF.pdf

小ワザ集に戻るTOPに戻る


電子メールファイルの移行方法

OSを再インストールするときなど,今までの電子メールファイル
を捨てるのは,大変つらいものです。

電子メールファイルの移行に関しては,
http://member.nifty.ne.jp/hont/mail/
を読もう!

もし,あなたが,ALmailのユーザなら,次のやり方のほうが
もっと簡単だ。
(1)元のALmailの電子メールの内容のディレクトリ(注1)を
   どこかにバックアップ。
   (注1)普通にALmailをインストールしたなら,
       X:\dokodemo\Almail\MailBox の下にある
       ディレクトリのことだ。
(2)新しくALmailをインストールしたとする。あなたの,
   アドレス,パスワード,なんたらかんたらを設定する。
   Y:\very-new\Almail\MailBox\doraemon
   のようなディレクトリができるはずだ。
(3)うえの(2)の新しいディレクトリに(1)でバックアップ
   したものをコピーする。
   ただし,Inbox.box と Outbox.box は名前を変えておいたほうが
   よい。(上の(2)と(1)で重複するからね。)
おしまい。(これだけでいいんだよ。ただし,ALmailをユーザ毎に
設定してある場合は保証しない。私はそうしてないからという理由よる。)

なお,コンピュータ内の電子メール・ディレクトリを
コピーされたら,悲惨な結末が待っていることになる。
みんな読まれちまうぞ。

以上。

小ワザ集に戻るTOPに戻る


GhostscriptでEPSをTIFに変換するバッチ

Ghostscriptを使って,EPSファイルをTIFファイルに変換するバッチを
添付します。

TeXな人が溜め込んだEPSを,MS-Wordに貼り付けるときに便利でしょ。

添付ファイル:eps2tif.bat

小ワザ集に戻るTOPに戻る


Win2kとXPでCtrl/CapsLockおよびEsc/半角を入れ替える

Windows 2000 と XP 以降は,Ctrl/CapsLock および
Esc/半角キーを入れ替えるには,レジストリの ScancodeMap を
使いましょう。
ただし,これと AltIme というソフトを併用すると,
わけのわからないことが起こります。
参考:http://mayu.sourceforge.net/mayu/doc/README-ja.html

したがって,AltIme は(2)に示すようにしてきちんと消して
ください。(常駐メモリ使用が4MB減ります。)

(1)ScancodeMapの説明:
      http://www.jsdlab.co.jp/~kei/tips/swap.html
      ただし,実際にレジストリを書き換えるには,(3)で
   説明する xkeymacs というソフトを使う。

(2)altIME をきちんとアンインストールする方法。
   altIME.txt(下記)に書いてあるように,ちゃんとやること。
   これをやっておかないと,あとで不可解なことが起こります。

   まず,下記の「●アンインストール方法」を実行する。
   さらに,ほかのユーザとして一度でも altIME を実行したこと
   がある場合は,「●手動でのアンインストール方法」の
   4.も,各ユーザごとに行うこと。

   
***** altIME.txt の抜粋 はじめ ******
●アンインストール方法
 Windows NTやWindows2000の場合はAdministrator権限が必要です。
1.AltIMEの設定で常駐させているなら一旦常駐のオプションをはずしてください。
スタートアップで起動しているときはスタートアップから削除してください。
  サウンドを使用している場合は設定を外し、設定を完全に削除してください。
2.タスクトレイ上のアイコンを左クリックしてAltIMEのオプションダイアログを表
示させ、アンインストールボタンを押してください。
3.いったん再起動後、ALTIME*.*のファイルを削除してください。

●手動でのアンインストール方法
注意:USB接続のキーボードを使っている場合はこの方法で削除してはいけません。
1.AltIMEの設定で常駐させているなら一旦常駐のオプションをはずしてください。
スタートアップで起動しているときはスタートアップから削除してください。
  サウンドを使用している場合は設定を外し、設定を完全に削除してください。
2.タスクトレイ上のアイコンを右クリックしてAltIMEを終了させます。
3.ALTIME.*のファイルを削除します。削除できないときは一旦再起動後、削除して
ください。
4.レジストリエディタで マイ コンピュータ\HKEY_CURRENT_USER\Software\Chombo\AltIME
以下のキーを削除します。
5.Windows NT/2000の場合は マイ コンピュータ\HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318} にある
UpperFilters から altime という文字列だけを削除します。
次に マイ コンピュータ\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AltIME
を削除します。
最後にWindowsエクスプローラで \WINNT\SYSTEM32\Driver にあるALTIME.SYSファイルを
削除してください。その後再起動が必要です。
***** altIME.txt の抜粋 おわり ******

(3)xkeymacs を使ってキーの入れ替えを行う。
   http://www.cam.hi-ho.ne.jp/oishi/
   で,xkeymacs2??.zip (*.msiではない)を入手して解凍する。
(3.1)インストールの方法は,Readme_J.txt に書いてある。
     つまり,解凍したものを,適当なフォルダにコピーするだけ。
(3.2)キーの入れ替え方法:
     管理者権限のあるユーザでログインして,上でインストールした
     xkeymacs.exe をダブルクリックして起動する。
     タスクバー(画面右下隅)にできる xkeymacs のアイコン
     (金色のカギ)をマウス右でクリックする。
     キーボードレイアウトを選択して,上のベースキーボードから
     マウス左を押しながら,下のリマップキーボードへドラッグ。
     下のキーボードのキーが赤色表示になれば,完了。
     変更の取り消しは,下の赤色キーをクリック。
     Windows を一旦終了して,再起動。
     これで,(1)ScancodeMapのレジストリ変更を,わかりやすい
     方法で行うことができる。
(3.3)以後,キーの入れ替えを変更しないなら,もう二度と
     xkeymacs.exe を起動する必要はない。
     xkeymacs をアンインストールしてもかまわない。
     ただし,(3.2)のキーの入れ替えを確認したり元に戻す
     時のために,しばらくはアンインストールしないほうがよい。
(3.4)xkeymacs.exe をダブルクリックして起動すれば,notepad,
     MS-Word,エクスプローラ を Emacs の指使いで使えます。
     変な気分になるので,私は xkeymacs.exe を起動しません。
以上。

小ワザ集に戻るTOPに戻る


Matlabで複素平面の単位円を真円にする

Matlabのグラフで複素平面上の単位円が,
つぶれた楕円になるときは,次のようにして,真円にする。

%%% ここから %%%
t = 0:pi/10:2*pi;
plot(exp(i*t),'-o')
axis equal     
%%% axis square %% なら,グラフ面が正方形になる!
%%% ここまで %%%

最後の行の「axis equal」で,縦横比(aspect ratio)を
同じにするのがポイントです。

Matlab Help のコンテンツを次のようにたどれ!
Matlab > Getting Started > グラフィックス >
            基本プロット > 虚数データと複素データ
または,
同上−−−−−−−−−−−−−−−−同上 > 軸の制御

あるいは,Matlab Help の索引(検索ではない!)で aspect を探せ。

以上。

小ワザ集に戻るTOPに戻る


Cygwin用のTgif, Canna, kinput2, Xbin

MS-Windows上で動く,UNIXもどきのCygwinでTgifが動きます。
ただし,Linuxで動かしたときより遅いです。

バイナリの入手元は,
http://www.on.cs.keio.ac.jp/~maru/cygwin-xfree-jp-supplement/
です。あれこれ考えずに,このページに書かれたとおりにやれば
動きます。

ただし,次のファイルが書き換わるので,バックアップをお忘れなく。
/usr/X11R6/bin 内の6個のファイル
  XWin.exe
  cygX11-6.dll
  cygXaw-6.dll
  cygXaw-7.dll
  cygfreetype-9.dll
  xedit.exe
ホームディレクトリの6個のフアイル
  .Xresources
  .canna
  .fvwm2rc
  .termcap
  .xinitrc
  .xserverrc
これら以外にも,いろいろ書き込んでくれます。

<<おまけ>>
Cygwin用の日本語化されたアプリケーション,たとえば,
less, groff, lha, man-pages-ja, vim, w3mなどは Cygwin+JE:
http://www.sixnine.net/cygwin/cygwin-je/catchup.html
にあります。
(近藤は,Cygwin+JEのCannaを消して,上のNakamaruさんのに変えました。)
説明は,
http://www.sixnine.net/cygwin/index_ja.html
ダウンロードは,
http://www.sixnine.net/pub/cygwin_je/
本は,
佐藤ほか:「Windowsで動かすUNIX環境 Cygwin+JE」
     ASCII, 2003.06 (2800円)
以上。

小ワザ集に戻るTOPに戻る


Meadow と Cygwinを仲良くさせる

ご承知のように Meadow で編集すると ファイルモード
(rwx UNIX的)がCygwin の ls -l で見たとき変になります。

それが嫌いでしたら,下記をそのままドットemacs ファイルの
末尾にコピー&ペーストしてください。
シェルスクリプトとそれ以外をちゃんと区別してモードを変えます。
出典は,3−4行目に書いておきました。
うまくゆかなかったら,出典の No.26-37 あたりを参照。
Meadowは10進数が好きで,Cygwinは8進数が好きなことにも注意。

Meadow と Cygwin が仲良くなったので,
すこし幸せにりました。

以上

*****ここから*****
;;;; Meadow で編集したファイルがシェルスクリプトの場合に,ファイルの rwx-mode
;;;; を Cygwin に合わせて,755 などにする。 <2004/02/19 17:53:40>
;; 2ch 「Cygwin使っている人いますか? その11」 No.25
;; http://pc.2ch.net/test/read.cgi/unix/1076240971/l50

(defvar cygwin-umask
  (string-to-int "18") ;;; by SK 18(decimal)=0022(octal)
;   私の Meadow は次行の `umask` が 0000 を返すので,上行で強制的に入れる。
;   (shell-command-to-string "printf %d 0`umask`"))
  "cygwin 上で設定された umask の値")

(defun cygwin-correct-file-mode ()
  "シェルスクリプトならばファイルモードを 777、それ以外ならば 666 に設定する。その際、シェルの umask を
参照するので、実際は 755 や 644 などになると思われる。"
  (interactive)
  (save-restriction
    (widen)
    (let* ((shell-script-p
            (string= "#!" (buffer-substring 1 (min 3 (point-max)))))
           (mode-777 511)
           (mode-666 438)
           (mode (logand (if shell-script-p mode-777 mode-666)
                         (lognot cygwin-umask)))
           (command (format "chmod %03o %s" mode (buffer-file-name))))
      (shell-command-to-string command)
      (message command))))

(add-hook 'after-save-hook 'cygwin-correct-file-mode)
;; Note by SK:  777(octal)=511(decimal), 666(octal)=438(decimal)
*****ここまで*****

小ワザ集に戻るTOPに戻る


無料のTeX吐く数式エディタ

無料のTeXコードを吐く数式エディタ TeXaid40.zip を
添付します。

こいつは,MS-Word の数式エディタと使いかたがそっくり
で,しかも,衝突しないから好きです。

さらに,MS-Wordの数式エディタから,TeXaid にコピペできます。
MS-Wordの数式を数個TeXに変換したいなら,これが最速です。

****逆変換 latex ==> Word ****
角藤さんが配布した,latex2rtf はweb2c-7.5.2-w32.tar.gz
に入ってました。(最近のはチェックしてません。)
やってみたけど,ちゃんと動きませんでした。

ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/win32/Changelog.euc-j
からコピペ:
[2003/04/22]
(01) dvitools-w32.tar.gz
     dvipng.exe を最新版にしました。
(02) web2c-7.5.2-lib.tar.gz
(03) texinfotools-w32.tar.gz
     texinfo.tex を 2003-04-21.17 としました。
(04) web2c-7.5.2-w32.tar.gz
     LaTeX から、Microsoft Word で開ける RTF 形式ファイルを出力する
     latex2rtf.exe (ltx2rtf.exe より少し利口と思われる) を入れました。
     ある程度日本語に対応させています。

latex2rtf の本家は,
http://latex2rtf.sourceforge.net/

昔は,Python 使った LEQ なんてのがあったけど,開発ストップしました。
http://pantheon.yale.edu/~pmm34/leq.html
数式の逆変換を一番上手にこなしていたのに,残念です。
もう手に入らないので,添付しときます。

以上

添付ファイル:TeXaide40.zip, LEQ.zip

小ワザ集に戻るTOPに戻る


MS-Windows XP Professional でセキュリティを使う

WinXP professional で,Win2000のようにフォルダの所有者や,
セキュリティを変えらるようにする方法。

Win2000なら,エクスプローラでフォルダを選択し、
右クリックで(WinXPの標準では表示されない)セキュリティ・タブを表示さ
せれば、所有者を変えらるようになる。

残念ながら,WinXPの標準では,上記のセキュリティ・タブが表示されない!
     
役に立たないと思っているWindowsのヘルプで
「セキュリティタブを表示する」を検索せよ!

要は,エクスプローラ>ツール>フォルダオプション>表示
で出てくる
[簡易ファイルの共有を使用する (推奨)] をオフにします、
をどこかで1回やればよいみたい。1回オフにすれば,あとで
オン(チェック有り)に戻してもよいみたい!不思議???

これで,分からなかったら,次のページを参照。
http://itpro.nikkeibp.co.jp/free/NT/WinQA/20030107/1/

PS.WinXP Home edition ではできないよ!

以上

小ワザ集に戻るTOPに戻る


M$-Wordの図で塗りつぶしを背景色に合わせる方法

M$−Wordの図で,塗りつぶしを背景色と同じにするには,
次のようにします。
> 塗りつぶしの色を
> 「塗りつぶしなし」
> を選択すれば,背景と同色になります。
> (選んで右クリック→テキストボックス書式設定→色と線)
>
> ちなみに,もともと楕円がオートシェープの書式設定で色を見ると黄色なのに
> くすんだ色になっているのは,3Dの設定になっているからです。

小ワザ集に戻るTOPに戻る


MS-WinXPに他人が入れないようにする方法

MS-WinXPをインストールしたままでは,
ユーザ名 Guset のアカウントが有効になっています。
ユーザ名 Guest のプロパティで「アカウントを無効にする」に
チェックを入れれば,Win2K と同じように他人が入れなくなります。

なお,上記は近藤研M2の堤君に教えてもらいました。

以上

小ワザ集に戻るTOPに戻る


ファイル名やフォルダ名に和文字を使うな!

M$-Windows を使うとき,ファイル名やフォルダ名に和文字
(漢字,カタカナ,ひらがな)を使わないようにしてください。
特に,半角カタカナは使用を厳禁します。
和文字を使うと,将来仲間はずれにされることがある。
できるだけ,英数字にすること。
たとえば,
kakusyu_motor_zahyouhenkan05-1.tex
みたいにする。
なお,上のアンダースコア( _ )は,マイナス( - )の方がよい。
打ちやすくて,見やすいから。
以上

小ワザ集に戻るTOPに戻る


近藤研の報告書の MS-WORD 用テンプレート

題名: 近藤研の報告書の MS-WORD 用テンプレート
MS−Word用の近藤研報告書のテンプレートファイル
    KondoLabRepostStyle.dot
を作りました。 使い方は,「近藤研究室の報告書の例題.doc」を読んでください。
(1)ページ番号を付けて欲しい。ディスカッションの時に必要。
(2)図とその表題をテキストボックスに入れて欲しい。
以上

小ワザ集に戻るTOPに戻る


Thunderbird v1.5を使う前のお約束

メールソフト「Thunderbird version1.5」で日本語名で表記された添付ファイルを送信すると、AL-MAIL等で受信した際に添付ファイルを読み取ることができない恐れがあります。

よって、以下の方法に従って手動でメールの設定を修正してからご使用下さい。

  1. [Thunderbird]-[ツール]-[オプション]で設定画面に入る。
  2. [詳細]タブに入り、[設定エディタ]を開く。
  3. 設定名[mail.strictly_mime.parm_folding]の値を[0]にする。
  4. クライアントを再起動する。

以上です。

小ワザ集に戻るTOPに戻る