(57)【特許請求の範囲】
【請求項１】
非線形回路を含む第１回路と非線形回路を含まない第２回路とを有する模擬回路を、前記第１回路と前記第２回路とに分割する分割手段と、
前記第１及び第２回路を解析する解析手段と、
前記模擬回路に対応する状態方程式のインダクタンス行列がブロック対角行列となるように、前記状態方程式を生成する生成手段と、
を備え、
前記分割手段は、前記生成手段が生成した前記状態方程式の前記インダクタンス行列における第１ブロック対角部分及び前記第１ブロック対角部分を除く第２ブロック対角部分の一方に対応する前記第１回路と、前記第１及び第２ブロック対角部分の他方に対応する前記第２回路とに分割する
ことを特徴とする電気回路のシミュレーション装置。
【請求項２】
前記解析手段は、
前記第１回路を解析する第１解析手段と、
前記第２回路を解析する第２解析手段と、を有し、
前記第１解析手段は、前記第１回路に含まれる前記非線形回路である第１非線形回路を、前記第１非線形回路の動作範囲に応じて定まる複数の線形回路とみなして前記第１回路を解析する
ことを特徴とする請求項１に記載の電気回路のシミュレーション装置。
【請求項３】
前記第１解析手段は、第１時間における前記第２解析手段の解析結果に基づいて、前記第１時間よりも後の第２時間において前記第１回路を解析する
ことを特徴とする請求項２に記載の電気回路のシミュレーション装置。
【請求項４】
前記第１解析手段は、
前記第１非線形回路の動作点に基づいて、前記複数の線形回路のうちの所定の線形回路を選択する選択手段と、
前記第１非線形回路を前記選択手段によって選択された前記所定の線形回路とみなして、前記第１回路を解析する第３解析手段と、を有する
ことを特徴とする請求項３に記載の電気回路のシミュレーション装置。
【請求項５】
前記第１及び第２解析手段は、互いに並列に動作する
ことを特徴とする請求項２乃至４の何れかに記載の電気回路のシミュレーション装置。
【請求項６】
非線形回路を含む第１回路と非線形回路を含まない第２回路とを有する模擬回路を解析するシミュレーション装置を用いた電気回路のシミュレーション方法であって、
前記シミュレーション装置が、
前記模擬回路に対応する状態方程式のインダクタンス行列がブロック対角行列となるように、前記状態方程式を生成する第１ステップと、
前記模擬回路を、前記第１ステップにおいて生成された前記状態方程式の前記インダクタンス行列における第１ブロック対角部分及び前記第１ブロック対角部分を除く第２ブロック対角部分の一方に対応する前記第１回路と、前記第１及び第２ブロック対角部分の他方に対応する前記第２回路とに分割する第２ステップと、
前記第１及び第２回路を解析する第３ステップと、
を実行する電気回路のシミュレーション方法。
【請求項７】
電気回路のシミュレーション装置に対して、
非線形回路を含む第１回路と非線形回路を含まない第２回路とを有する模擬回路に対応する状態方程式のインダクタンス行列がブロック対角行列となるように、前記状態方程式を生成する第１機能と、
前記模擬回路を、前記第１機能において生成された前記状態方程式の前記インダクタンス行列における第１ブロック対角部分及び前記第１ブロック対角部分を除く第２ブロック対角部分の一方に対応する前記第１回路と、前記第１及び第２ブロック対角部分の他方に対応する前記第２回路とに分割する第２機能と、
前記第１及び第２回路を解析する第３機能と、
を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気回路のシミュレーション装置、電気回路のシミュレーション方法、プログラムに関する。
【背景技術】
【０００２】
例えば、電気回路を模擬した模擬回路を解析するシミュレーション装置が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６―２７４５６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のシミュレーション装置は、模擬回路を分割せずに解析しているために、模擬回路から導出される方程式を演算するためのリソースが増加し、模擬回路を解析する速度が低下する虞がある。
【課題を解決するための手段】
【０００５】
前述した課題を解決する主たる本発明は、非線形回路を含む第１回路と非線形回路を含まない第２回路とを有する模擬回路を、前記第１回路と前記第２回路とに分割する分割手段と、前記第１及び第２回路を解析する解析手段と、前記模擬回路に対応する状態方程式のインダクタンス行列がブロック対角行列となるように、前記状態方程式を生成する生成手段と、を備え、前記分割手段は、前記生成手段が生成した前記状態方程式の前記インダクタンス行列における第１ブロック対角部分及び前記第１ブロック対角部分を除く第２ブロック対角部分の一方に対応する前記第１回路と、前記第１及び第２ブロック対角部分の他方に対応する前記第２回路とに分割することを特徴とする電気回路のシミュレーション装置である。
【０００６】
本発明の他の特徴については、添付図面及び本明細書の記載により明らかとなる。
【発明の効果】
【０００７】
本発明によれば、模擬回路を解析するためのリソースを減少させると共に、当該模擬回路を解析する速度を向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態におけるシミュレーション装置の機能を示す図である。
【図２】本発明の実施形態におけるシミュレーション装置のハードウエアを示す図である。
【図３】本発明の実施形態における模擬回路を示す回路図である。
【図４】本発明の実施形態における分割される位置と模擬回路とを示す回路図である。
【図５】本発明の実施形態における第１乃至第３分割回路を示す回路図である。
【図６】本発明の実施形態における演算部を示すブロック図である。
【図７】本発明の実施形態におけるシミュレーション装置の動作を示すフローチャートである。
【図８】シミュレーション装置のリソースを示す図である。
【発明を実施するための形態】
【０００９】
本明細書および添付図面の記載により、少なくとも以下の事項が明らかとなる。
【００１０】
＝＝＝シミュレーション装置＝＝＝
以下、図１及び図２を参照して、本実施形態におけるシミュレーション装置について説明する。図１は、本実施形態におけるシミュレーション装置の機能を示す図である。図２は、本実施形態におけるシミュレーション装置のハードウエアを示す図である。
【００１１】
シミュレーション装置１（電気回路のシミュレーション装置）は、非線形素子を含む電力系統を模擬した模擬回路１００（図３）を解析するための装置である。尚、本実施形態においては、シミュレーション装置１が、模擬回路１００の解析として、例えば、模擬回路１００における電流値Ｉ１、Ｉ２、Ｉ３、電圧値Ｖを求める場合について説明する。又、電流値Ｉ１、Ｉ２、Ｉ３、電圧値Ｖを、模擬回路１００の状態を示す状態変数とも称する。尚、電流値Ｉ１は、接続点Ｐ１から交流電源２１に供給される電流の値を示し、電流値Ｉ２は、接続点Ｐ２から接続点Ｐ１に供給される電流の値を示し、電流Ｉ３は、交流電源４１から接続点Ｐ２に供給される電流の値を示している。又、電圧値Ｖは、キャパシタＣの両端に発生する電圧の値を示している。
【００１２】
シミュレーション装置１は、ＣＰＵ（Central Processing Unit）７１（図２）、通信装置７２、記憶装置７３、表示装置７４、入力装置７５を有する。
【００１３】
ＣＰＵ７１は、記憶装置７３に記憶されているプログラムを実行することにより、シミュレーション装置１を統括制御し、シミュレーション装置１の各機能を実現する。記憶装置７３には、プログラムやデータ等が格納されている。通信装置７２は、通信を行う。表示装置７４は、シミュレーション装置１の各種情報を表示するための例えばディスプレイ装置である。入力装置７５は、シミュレーション装置１に対してデータを入力するための例えばキーボード、マウス等である。
【００１４】
シミュレーション装置１は、回路方程式生成部１１（図１）、回路分割部１２（分割手段、生成手段）、実装部１３（分割手段）、演算部１４（「シミュレーション装置１の各機能」とも称する）を更に有する。シミュレーション装置１の各機能は、前述したように、記憶装置７３に記憶されているプログラムをＣＰＵ７１が実行することにより実現される。
【００１５】
回路方程式生成部１１は、模擬回路１００に基づいて回路方程式を生成し、当該回路方程式を模擬回路１００に対応する状態方程式に変換する。回路分割部１２は、回路方程式生成部１１によって変換された状態方程式に基づいて、模擬回路１００を分割する。演算部１４は、回路分割部１２によって分割された模擬回路１００を解析するための演算を行う。尚、回路分割部１２及び演算部１４が、解析手段、第１乃至第３解析手段、選択手段に対応する。
【００１６】
＝＝＝模擬回路＝＝＝
以下、図３を参照して、本実施形態における模擬回路について説明する。図３は、本実施形態における模擬回路を示す回路図である。
【００１７】
模擬回路１００は、非線形素子を含む電力系統を模擬した回路である。模擬回路１００は、例えば、入力装置７５又は通信装置７２を介してシミュレーション装置１に入力される情報に基づいてシミュレーション装置１によって生成される。
【００１８】
模擬回路１００は、交流電源２１、４１、抵抗２３、４５、４３、非線形抵抗２２、インダクタ２４、４４、４２、非線形インダクタ４６、キャパシタ３１を有する。
【００１９】
交流電源２１、４１は、交流電圧を発生する能動素子であり、例えば発電機を模擬している。尚、交流電源２１、４１では夫々、電圧値Ｅ１、Ｅ２が発生することとする。
【００２０】
＝各素子＝
非線形抵抗２２は、非線形特性を有する受動素子であり、例えば遮断器の接点抵抗を模擬している。非線形抵抗２２の抵抗値ｒｓは、遮断器がオンしたとき対応する第１の値ｒｏｎ、及び、遮断器がオフしたときに対応する第２の値ｒｏｆｆの一方の値とみなされる。尚、第１の値ｒｏｎと第２の値ｒｏｆｆとは互いに異なる値である。つまり、非線形抵抗２２は、遮断器のオンオフの状態に基づいて抵抗値ｒｓが異なる２つの値とみなされる可変抵抗である。よって、模擬回路１００では、抵抗値ｒｓが遮断器の動作状態に応じて領域分割数が２個となるように区分線形化されている。尚、非線形抵抗２２の抵抗値ｒｓについての区分線形化は、例えば後述する回路分割部１２で行われることとしてもよい。
【００２１】
抵抗２３、４５、４３、インダクタ２４、４４、４２、キャパシタ３１（「抵抗等の各素子」とも称する）は、線形特性を有する受動素子であり、例えば電力線の抵抗、インダクタンス、キャパシタを模擬している。抵抗２３、４５、４３夫々の抵抗値ｒ１、ｒ２、ｒ３、インダクタ２４、４４、４２夫々のインダクタンス値Ｌ１、Ｌ２、Ｌ３、キャパシタ３１のキャパシタンス値Ｃは、固定値である。
【００２２】
非線形インダクタ４６は、非線形特性を有する受動素子であり、例えば変圧器の巻線におけるインダクタンスを模擬している。非線形インダクタ４６のインダクタンス値Ｌｍは、非線形インダクタ４６に供給される電流（「供給電流」とも称する）の値による非線形インダクタ４６の飽和効果に基づいて、第１の値Ｌｍ１、第２の値Ｌｍ２、第３の値Ｌｍ３のうちの何れか一の値とみなされる。尚、第１の値Ｌｍ１、第２の値Ｌｍ２、第３の値Ｌｍ３は互いに異なる値である。つまり、非線形インダクタ４６は、非線形インダクタ４６に供給される電流の値に基づいてインダクタンス値Ｌｍが異なる３つの値とみなされる可変インダクタである。よって、模擬回路１００では、インダクタンス値Ｌｍが供給電流の値に応じて領域分割数が３個となるように区分線形化されている。尚、非線インダクタ４６のインダクタンス値Ｌｍについての区分線形化は、例えば後述する回路分割部１２で行われることとしてもよい。
【００２３】
例えば、供給電流の値が第１範囲内の場合、インダクタンス値Ｌｍが第１の値Ｌｍ１とみなされ、供給電流の値が第２範囲内の場合、インダクタンス値Ｌｍが第２の値Ｌｍ２とみなされ、供給電流の値が第３範囲内の場合、インダクタンス値Ｌｍが第３の値Ｌｍ３とみなされることとする。尚、第２範囲の最小値が第１範囲の最大値よりも大きくなり、且つ、第３範囲の最小値が第２範囲の最大値より大きくなるように、第１乃至第３範囲が定められていることとする。
【００２４】
＝接続＝
非線形抵抗２２、抵抗２３、４５、４３、インダクタ２４、４４、４２は、交流電源２１と交流電源４１との間において直列に接続されている。キャパシタ３１、非線形インダクタ４６は、交流電源２１と交流電源４１との間において並列に接続されている。
【００２５】
＝＝＝回路方程式生成部＝＝＝
以下、図１及び図３を参照して、本実施形態における回路方程式生成部について説明する。
【００２６】
回路方程式生成部１１は、前述したように、模擬回路１００に基づいて回路方程式を生成し、当該回路方程式を模擬回路１００に対応する状態方程式に変換する。
【００２７】
＝回路方程式の生成＝
回路方程式生成部１１は、例えばキルヒホッフの第１及び第２法則を用いて、模擬回路１００から例えば４個の回路方程式（１）―（４）を生成する。
【００２８】
【数１】
0006379722.tif 000002
尚、回路方程式生成部１１が生成する回路方程式の個数は、シミュレーション装置１の状態変数（例えば、電流値Ｉ１、Ｉ２、Ｉ３、電圧値Ｖ）の個数に対応している。
【００２９】
又、抵抗値ｒｓは、数式（５）が示す値となる。つまり、抵抗値ｒｓは、前述したように、遮断器がオンしたとき対応する第１の値ｒｏｎ、及び、遮断器がオフしたときに対応する第２の値ｒｏｆｆの一方の値となる。
【００３０】
【数２】
0006379722.tif 000003
又、インダクタンス値Ｌｍは、数式（６）が示す値となる。つまり、供給電流の値（Ｉ３−Ｉ２）が第１範囲としての範囲Ω１内の場合、インダクタンス値Ｌｍが第１の値Ｌｍ１となり、供給電流の値（Ｉ３−Ｉ２）が第２範囲としての範囲Ω２内の場合、インダクタンス値Ｌｍが第２の値Ｌｍ２となり、供給電流の値（Ｉ３−Ｉ２）が第３範囲としての範囲Ω３内の場合、インダクタンス値Ｌｍが第３の値Ｌｍ３となる。
【００３１】
【数３】
0006379722.tif 000004
＝状態方程式の生成＝
この後、回路方程式生成部１１は、回路方程式（１）―（４）から例えば状態方程式（７）を生成する。
【００３２】
【数４】
0006379722.tif 000005
＝＝＝回路分割部＝＝＝
以下、図１、図４及び図５を参照して、本実施形態における回路分割部について説明する。図４は、本実施形態における分割される位置と模擬回路とを示す回路図である。尚、模擬回路１００における、回路分割部１２によって分割される位置が破線で示されている。図５は、本実施形態における第１乃至第３分割回路を示す回路図である。
【００３３】
回路分割部１２は、回路方程式生成部１１によって生成された状態方程式のインダクタンス行列をブロック対角行列とすることが可能であるか否かについて判断（「ブロック対角化の判断」とも称する）し、判断結果に基づいて当該状態方程式を変換する。尚、インダクタンス行列は、例えば、状態方程式（７）においては、左辺におけるインダクタンス値が要素となっている４行４列の行列を示している。又、ブロック対角行列は、行列におけるブロック対角部分の要素において所定値が表示されており、ブロック対角部分以外の部分の要素が０となっている行列である。尚、ブロック対角部分は、行列における対角部分の要素及び行列を示している。
【００３４】
＝ブロック対角化の判断＝
回路分割部１２は、回路方程式生成部１１によって生成された状態方程式（例えば、状態方程式（７））の基としての回路方程式（例えば、回路方程式（１）−（４））の並べ替えに基づいて、ブロック対角化の判断を行う。具体的には、インダクタンス行列がブロック対角行列となるように回路方程式を並べ替えることが可能である場合、回路分割部１２は、インダクタンス行列をブロック対角行列とすることが可能であると判断する。一方、インダクタンス行列がブロック対角行列となるように回路方程式を並べ替えることが可能でない場合、回路分割部１２は、インダクタンス行列をブロック対角行列とすることが可能でないと判断する。
【００３５】
ここで、状態方程式（７）のインダクタンス行列における１乃至４行目の要素は夫々、回路方程式（１）乃至（４）のインダクタンス値に対応している。回路方程式を並べ替えることは、状態方程式のインダクタンス行列における各行の要素に対応する回路方程式が変更されるように状態方程式を生成することに対応している。又、回路方程式を並べ替えることは、状態方程式のインダクタンス行列の各行を列方向において並べ替える（入れ替える）ことにも対応している。
【００３６】
例えば、状態方程式（７）において、回路方程式（１）及び（２）が入れ替えられるように並び替えた場合の状態方程式のインダクタンス行列（「他のインダクタンス行列」とも称する）の１行目には、状態方程式（７）のインダクタンス行列の２行目の要素が現れ、他のインダクタンス行列の２行目には、状態方程式（７）のインダクタンス行列の１行目の要素が現れる。
【００３７】
＝状態方程式の変換＝
回路方程式生成部１１によって生成された状態方程式のインダクタンス行列をブロック対角行列とすることが可能であると判断した場合、回路分割部１２は、インダクタンス行列及び抵抗行列がブロック対角行列となるように当該状態方程式を変換する。尚、抵抗行列は、例えば、状態方程式（７）においては、右辺における抵抗値及びキャパシタンス値が要素となっている４行４列の行列を示している。一方、回路方程式生成部１１によって生成された状態方程式のインダクタンス行列をブロック対角行列とすることが可能でないと判断した場合、回路分割部１２は、当該状態方程式を変換しない。
【００３８】
例えば、状態方程式（７）についてはインダクタンス行列が既にブロック対角行列となっているために、回路分割部１２は、インダクタンス行列をブロック対角行列とすることが可能であると判断する。そして、回路分割部１２は、インダクタンス行列と共に抵抗行列がブロック対角行列となるように、状態方程式（７）を状態方程式（８）に変換する。具体的には、回路分割部１２は、状態方程式（７）の抵抗行列におけるインダクタンス行列のブロック対角部分に対応する部分以外の要素が０となるように、状態方程式（７）の右辺第１項の要素を右辺第２項へ移動させる。
【００３９】
【数５】
0006379722.tif 000006
＝状態方程式の変換と回路分割＝
状態方程式（８）は、夫々独立した状態方程式（９）―（１１）（状態方程式群）に対応している。そして、状態方程式（９）―（１１）は夫々、第１分割回路２、第２分割回路３、第３分割回路４に対応している。
【００４０】
【数６】
0006379722.tif 000007
つまり、回路分割部１２は、模擬回路１００を分割線９０１、９０２において分割して、模擬回路１００から第１分割回路２、第２分割回路３、第３分割回路４（「各分割回路」とも称する）を生成している。
【００４１】
＝各分割回路＝
第１分割回路２と第２分割回路３とは、第１結合回路としての交流電源２０１及び電流源３０１によって関連付けられている。交流電源２０１は、電流源３０１の両端に発生する電圧に対応する電圧を供給する。電流源３０１は、交流電源２０１からインダクタ２４等を介して交流電源２１に供給される電流に対応する電流を出力する。
【００４２】
第３分割回路４と第２分割回路３とは、第２結合回路としての交流電源４０１及び電流源３０２によって関連付けられている。交流電源４０１は、電流源３０２の両端に発生する電圧に対応する電圧を供給する。電流源３０２は、接続点Ｐ２からインダクタ４４等を介して交流電源４０１に供給される電流に対応する電流を出力する。
【００４３】
そして、第１及び第２結合回路を介して関連付けられて結合された各分割回路によって、模擬回路１００は模擬されることになる。
【００４４】
従って、回路分割部１２は、回路方程式生成部１１によって生成された状態方程式（例えば、状態方程式（７））を、状態方程式（８）に変換することにより、模擬回路１００を各分割回路によって模擬している。
【００４５】
＝＝＝実装部、演算部＝＝＝
以下、図１及び図６を参照して、本実施形態における実装部及び演算部について説明する。図６は、本実施形態における演算部を示すブロック図である。
【００４６】
＝実装部＝
実装部１３は、回路分割部１２によって分割された各分割回路を、演算部１４に実装する。具体的には、実装部１３は、非線形素子が含まれている第１分割回路２及び第３分割回路４を夫々、区分線形回路演算部１４１、１４３に実装する。更に、実装部１３は、非線形素子が含まれていない第２分割回路３を、線形回路演算部１４２に実装する。
【００４７】
＝演算部＝
演算部１４は、前述したように、実装部１３によって実装された分割回路の演算を行う。演算部１４は、区分線形回路演算部１４１、１４３、線形回路演算部１４２を有する。
【００４８】
＜区分線形回路演算部１４１＞
区分線形回路演算部１４１は、例えば線形回路演算部１４２との間において通信を行い、情報の入出力が行われる。区分線形回路演算部１４１は、第１時間における電圧値Ｖ１を示す情報が線形回路演算部１４２から入力され、当該入力された情報に基づいて第１時間よりも後の第２時間において第１分割回路２の演算を行う。この場合の電圧値Ｖ１は、電圧値Ｖに対応しているために、区分線形回路演算部１４１は、状態方程式（９）についての演算を行い、電流値Ｉ１を示す情報を例えば線形回路演算部１４２に出力する。尚、線形回路演算部１４２に出力された電流値Ｉ１を示す情報は、線形回路演算部１４２での演算で用いられる。
【００４９】
尚、区分線形回路演算部１４１は、上述の第１分割回路２の演算において、非線形抵抗２２の抵抗値ｒｓが第１の値ｒｏｎ及び第２の値ｒｏｆｆのうちの一方の値であることとして演算を行う。例えば、区分線形回路演算部１４１は、遮断器の状態（動作点）を示す情報に基づいて、第１時間の遮断器の状態に対応する値を第２時間における抵抗値ｒｓとして選択することとしてもよい。
【００５０】
＜区分線形回路演算部１４３＞
区分線形回路演算部１４３は、例えば線形回路演算部１４２との間において通信を行い、情報の入出力が行われる。区分線形回路演算部１４３は、第１時間における電圧値Ｖ２を示す情報が線形回路演算部１４２から入力され、当該入力された情報に基づいて第１時間よりも後の第２時間において第３分割回路４の演算を行う。この場合の電圧値Ｖ２は、電圧値Ｖに対応しているために、区分線形回路演算部１４３は、状態方程式（１１）についての演算を行い、電流値Ｉ２を示す情報を例えば線形回路演算部１４２に出力する。尚、線形回路演算部１４２に出力された電流値Ｉ２を示す情報は、線形回路演算部１４２での演算で用いられる。
【００５１】
尚、区分線形回路演算部１４３は、上述の第３分割回路４の演算において、非線形インダクタ４６のインダクタンス値Ｌｍが第１の値Ｌｍ１、第２の値Ｌｍ２、第３の値Ｌｍ３のうちの何れか一の値であることとして演算を行う。例えば、区分線形回路演算部１４３は、第１時間における電流値Ｉ２、Ｉ３によって定まる供給電流の値が含まれる範囲に対応する値を、第２時間におけるインダクタンス値Ｌｍとして選択することとしてもよい。
【００５２】
＜線形回路演算部１４２＞
線形回路演算部１４２は、例えば区分線形回路演算部１４１、１４３との間において通信を行い、情報の入出力が行われる。線形回路演算部１４２は、第１時間における電流値Ｉ１を示す情報が区分線形回路演算部１４１から入力され、更に、第１時間における電流値Ｉ２を示す情報が区分線形回路演算部１４３から入力される。線形回路演算部１４２は、これらの入力された情報に基づいて、第１時間よりも後の第２時間において第２分割回路３の演算を行う。この場合の電圧値Ｖ１、Ｖ２は、電圧値Ｖに対応しているために、線形回路演算部１４２は、状態方程式（１０）についての演算を行い、電圧値Ｖ１、Ｖ２を示す情報を夫々、例えば区分線形回路演算部１４１、１４３に出力する。尚、区分線形回路演算部１４１、１４３夫々に出力された電圧Ｖ１、Ｖ２を示す情報は、区分線形回路１４１、１４３での演算で用いられる。
【００５３】
従って、シミュレーション装置１の状態変数（例えば、電流値Ｉ１、Ｉ２、Ｉ３、電圧値Ｖ）に対して、演算部１４において、状態方程式が演算されるために、状態変数の値を求めることが可能となる。
【００５４】
＝＝＝シミュレーション装置の動作＝＝＝
以下、図１及び図７を参照して、本実施形態におけるシミュレーション装置の動作について説明する。図７は、本実施形態におけるシミュレーション装置の動作を示すフローチャートである。
【００５５】
シミュレーション装置１は、模擬回路１００に基づいて回路方程式（１）―（４）を生成（定式化）した（Ｓ１）後、当該生成された回路方程式（１）―（４）から状態方程式（７）を生成する（Ｓ２）。つまり、シミュレーション装置１は、Ｓ１で生成された回路方程式（１）―（４）を状態方程式（７）に変換する。
【００５６】
シミュレーション装置１は、ブロック対角化の判断を行う（Ｓ３）。例えば、状態方程式（７）についてはインダクタンス行列がブロック対角行列となっているために、シミュレーション装置１は、インダクタンス行列をブロック対角行列とすることが可能であると判断する（Ｓ３のＹＥＳ）。シミュレーション装置１は、インダクタンス行列と共に抵抗行列がブロック対角行列となるように、状態方程式（７）を状態方程式（８）に変換する（Ｓ５）。
【００５７】
シミュレーション装置１は、状態方程式（８）から状態方程式（９）―（１１）を生成する。つまり、シミュレーション装置１は、模擬回路１００を各分割回路に分割する（Ｓ５）。尚、この際、非線形抵抗２２の抵抗値ｒｓ及び非線形インダクタ４６のインダクタンス値Ｌｍは、区分線形化される。シミュレーション装置１は、各分割回路を演算部１４に実装（Ｓ６）した後、演算部１４での演算を開始する（Ｓ７）。この後、演算部１４の区分線形回路演算部１４１、１４３、線形回路演算部１４２は夫々、互いに並列に演算を行う（Ｓ８）。シミュレーション装置１は、演算部１４の演算が終了したか否かを判断する（Ｓ９）。演算部１４の演算が終了した場合（Ｓ９のＹＥＳ）、シミュレーション装置１は動作を終了する。演算部１４の演算が終了していない場合（Ｓ９のＮＯ）、シミュレーション装置１はＳ８の動作を行う。
【００５８】
尚、Ｓ３において、インダクタンス行列をブロック対角行列とすることが可能でないと判断した場合（Ｓ３のＮＯ）、シミュレーション装置１は、Ｓ５の動作を行う。
【００５９】
＝＝＝シミュレーション装置のリソースと処理速度＝＝＝
以下、図８を参照して、本実施形態におけるシミュレーション装置のリソースと処理速度について説明する。図８は、シミュレーション装置のリソースを示す図である。
【００６０】
例えば、他のシミュレーション装置が模擬回路１００を解析して状態変数の値を求める際のリソース及び処理速度と、シミュレーション装置１が模擬回路１００を解析して状態変数の値を求める際のリソース及び処理速度とについて説明する。尚、解析対象としての状態変数は、前述したように、例えば電流値Ｉ１、Ｉ２、Ｉ３、電圧値Ｖであることとする。又、他のシミュレーション装置は、シミュレーション装置１の各機能を有していない従来のシミュレーション装置であることとする。
【００６１】
＜他のシミュレーション装置＞
状態変数の値を求める場合、他のシミュレーション装置は、例えば状態方程式（７）の演算を行う。この場合、他のシミュレーション装置は、例えば、状態方程式（７）のインダクタンス行列の逆行列の演算を、各非線形素子の領域毎に行って、状態変数の値を求める。つまり、他のシミュレーション装置は、模擬回路１００から状態変数の値を求める際に、数式（１２）が示す個数の方程式について演算を行う。
【００６２】
【数７】
0006379722.tif 000008
尚、ｎは状態方程式（７）の次数に対応し、ｊ（ｊ１、ｊ２）は模擬回路の各非線形素子が区分線形化された際の領域の個数に対応している。つまり、ｎは４に対応し、ｊ１は非線形抵抗２２の領域の個数としての２に対応し、ｊ２は非線形インダクタ４６の領域の個数としての３に対応している。
【００６３】
従って、他のシミュレーション装置は、模擬回路１００から状態変数の値を求めるために４×（２×３）＝２４（個）の方程式の演算を行う。つまり、他のシミュレーション装置については、２４個の方程式に対応するリソースを確保するのが必要となる。又、他のシミュレーション装置については、２４個の方程式を例えば直列に演算されるので、状態変数の値を求めるための処理速度が低下する虞がある。更に、他のシミュレーション装置については、前述したように、逆行列の演算を行う必要があるので、処理速度が更に低下する虞がある。
【００６４】
＜シミュレーション装置１＞
状態変数の値を求める場合、シミュレーション装置１は、前述したようにＳ１乃至Ｓ９（図７）の動作を行う。シミュレーション装置１については、模擬回路１００から状態変数の値を求める際に、数式（１３）が示す個数の方程式が演算の候補となる。
【００６５】
【数８】
0006379722.tif 000009
尚、数式（１３）の第１項は非線形素子が含まれている第１分割回路２（図５）及び第３分割回路４に対応する方程式の個数を示しており、第２項は非線形素子が含まれていない第２分割回路３に対応する方程式の個数を示している。又、第１項のｌ（ｌ１、ｌ２）は状態方程式（９）、（１１）の次数に対応し、第１項のｊ（ｊ１、ｊ２）は第１分割回路２及び第３分割回路４の各非線形素子が区分線形化された際の領域の個数に対応している。第２項のｌは状態方程式（１０）の次数に対応している。つまり、第１項のｌ１及びｌ２は夫々１、２に対応し、第１項のｊ１及びｊ２は夫々２、３に対応し、第２項のｌは１に対応している。
【００６６】
従って、シミュレーション装置１については、模擬回路１００から状態変数の値を求める際に、（１×２＋２×３）＋１＝９（個）の方程式が演算の候補となる。つまり、シミュレーション装置１については、９個の方程式に対応するリソースを確保すればよいことになる。よって、他のシミュレーション装置のリースに対するシミュレーション装置１のリソースの割合は、数式（１４）が示す割合に応じた割合となる。このために、シミュレーション装置１のリソースを削減することができる。
【００６７】
【数９】
0006379722.tif 000010
又、シミュレーション装置１については、インダクタンス行列の逆行列を演算するのが不要となるので、逆行列を逐次演算する他のシミュレーション装置に比べて、状態変数の値を求めるための処理速度を向上させることができる。又、演算候補となる方程式の数を減少させることが可能となるので、逆行列の逐次演算はなして単に並列化させて他のシミュレーション装置に比べて、処理速度を更に向上させることができる。更に、区分線形回路演算部１４１、１４３、線形回路演算部１４２は夫々互いに並列に演算を行うために、処理速度を更に向上させることができる。
【００６８】
前述したように、シミュレーション装置１は、回路分割部１２、演算部１４を有する。回路分割部１２は、模擬回路１００を各分割回路に分割する。演算部１４は、回路分割部１２によって分割された模擬回路１００を解析するための演算を行う。よって、模擬回路１００を解析するためのリソースを減少させると共に、模擬回路１００を解析する速度を向上させることができる。
【００６９】
又、演算部１４は、区分線形回路演算部１４１、１４３、線形回路演算部１４２を有する。区分線形回路演算部１４１は、抵抗値ｒｓを、非線形抵抗２２の動作状態（動作範囲）に応じて定まる第１の値ｒｏｎ又は第２の値ｒｏｆｆとみなして演算を行う。つまり、区分線形回路演算部１４１は、第１分割回路２を、抵抗値ｒｓが第１の値ｒｏｎとなる非線形抵抗２２を含む線形回路、及び、抵抗値ｒｓが第２の値ｒｏｆｆとなる非線形抵抗２２を含む線形回路とみなして演算を行う。又、区分線形回路演算部１４３は、インダクタンス値Ｌｍを、供給電流の値に応じて定まる第１の値Ｌｍ１、第２の値Ｌｍ２、又は第３の値Ｌｍ３とみなして演算を行う。つまり、区分線形回路演算部１４３は、インダクタンス値Ｌｍを、非線形インダクタ４６の動作範囲に応じて定まる値とみなして演算を行う。従って、区分線形回路演算部１４３は、インダクタンス値Ｌｍが第１の値Ｌｍ１となる非線形インダクタ４６を含む第１線形回路、インダクタンス値Ｌｍが第２の値Ｌｍ２となる非線形インダクタ４６を含む第２線形回路、及び、インダクタンス値Ｌｍが第３の値Ｌｍ３となる非線形インダクタ４６を含む第３線形回路とみなして演算を行う。よって、非線形素子を演算するための複雑な演算を行うのが不要となるために、模擬回路１００を解析するためのリソースを減少させると共に、模擬回路１００を解析する速度を向上させることができる。
【００７０】
又、区分線形回路演算部１４３は、第１時間における電圧値Ｖ２を示す情報が線形回路演算部１４２から入力され、当該入力された情報に基づいて第１時間よりも後の第２時間において第３分割回路４の演算（解析）を行う。よって、例えば、区分線形回路演算部１４３と線形回路演算部１４２と間において情報の入出力が行われるために、模擬回路１００の解析を確実に行うことができる。
【００７１】
又、区分線形回路演算部１４３は、供給電流に基づいて、第１乃至第３線形回路のうちの所定の線形回路を選択する。区分線形回路演算部１４３は、非線形回路としての第３分割回路４を、選択された所定の線形回路とみなして演算（解析）を行う。よって、第１乃至第３線形回路における所定の線形回路以外の線形回路についての演算を省略することにより、模擬回路１００を解析するためのリソースを更に減少させると共に、模擬回路１００を解析する速度を更に向上させることができる。
【００７２】
又、区分線形回路演算部１４１、１４３、線形回路演算部１４２は夫々、互いに並列に演算動作を行う。よって、模擬回路１００を解析する速度を更に向上させることができる
又、回路分割部１２は、インダクタンス行列がブロック対角行列となっている状態方程式（８）に基づいて、模擬回路１００を各分割回路に分割する。よって、模擬回路１００を解析するための方程式の数を減少させることにより、模擬回路１００を解析するためのリソースを減少させると共に、模擬回路１００を解析する速度を向上させることができる。
【００７３】
又、回路分割部１２は、状態方程式のインダクタンス行列がブロック対角行列となるように、回路方程式（１）−（４）の並べ替えを行って状態方程式（７）を生成する。よって、模擬回路１００を解析するための方程式の数を確実に減少させることができる。
【００７４】
尚、上記実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物も含まれる。
【００７５】
本実施形態では、模擬回路１００を例えば３個の分割回路に分割することについて説明したが、これに限定されるものではない。例えば、模擬回路１００を４個の分割回路に回路分割部１２が分割することとしてもよい。具体的には、模擬回路１００を第１分割回路２、第２分割回路３、一方の回路及び他方の回路の４個に、回路分割部１２が分割することとしてもよい。尚、一方の回路及び他方の回路は、状態方程式（１１）を展開して生成される２個の状態方程式に夫々に対応する回路である。つまり、一方の回路及び他方の回路は、第３分割回路４を分割して生成される回路である。更に、シミュレーション装置１が、一方の回路の解析及び他方の回路の解析を並列に行うこととしてもよい。この場合、模擬回路１００における並列に解析される素子数が増大するために、シミュレーション装置１が模擬回路１００を解析する速度を更に向上させることができる。
【００７６】
又、本実施形態では、シミュレーション装置１の各機能がＣＰＵ７１の動作により実現されることについて説明したが、これに限定されるものではない。例えば、シミュレーション装置１に対してＣＰＵ７１の代わりにマルチコアＣＰＵ又はマルチコアＦＰＧＡ（field-programmable gate array）が設けられていることとしてもよい。そして、シミュレーション装置１の各機能は、マルチコアＣＰＵ又はマルチコアＦＰＧＡの動作により実現されることとしてもよい。
【００７７】
又、本実施形態では、模擬回路１００に対して非線形素子が２個含まれていることについて説明したが、これに限定されるものではない。例えば、模擬回路１００に対して非線形素子が１個又は３個以上含まれていることとしてもよい。
【００７８】
又、本実施形態では、模擬回路１００をシミュレーション装置１が解析することについて説明したが、これに限定されるもではない。例えば、電力系統以外の電気回路を模擬した他の模擬回路をシミュレーション装置１が解析することとしてもよい。
【００７９】
又、本実施形態では、インダクタンス行列及び抵抗行列の双方がブロック対角行列となる状態方程式（８）に回路分割部１２が変換することについて説明したが、これに限定されるものではない。例えば、状態方程式（８）をシミュレーション装置１とは異なる他の装置が生成することとしてもよい。この場合、他の装置によって生成された状態方程式（８）を示す情報が、通信装置７２又は入力装置７５を介してシミュレーション装置１に入力されることとする。そして、当該入力された情報に基づいて、回路分割部１２が模擬回路１００を各分割回路に分割することとする。この場合、シミュレーション装置１での状態方程式（８）の生成が不要となるために、シミュレーション装置１が模擬回路１００を解析する速度を更に向上させることができる。
【００８０】
又、本実施形態では、状態方程式におけるインダクタンス行列の行を並べ替えて、当該インダクタンス行列をブロック対角行列とすることについて説明したが、これに限定されるものではない。例えば、シミュレーション装置１が、「有尾一郎, 池田清宏  ブロック対角化法の数値解析効率評価  計測自動制御学会論文集  Vol.34, No.6, 593/600 (1998)」（「公知文献」とも称する）に記載されている手段を用いて、状態方程式におけるインダクタンス行列をブロック対角行列とすることとしてもよい。更に、この場合、例えば、シミュレーション装置１が、公知文献に記載されている式（３）に基づいて、状態方程式のインダクタンス行列をブロック対角行列とすることが可能であるか否かについて判断することとしてもよい。この場合、ブロック対角化できる対象範囲を広めることができるために、インダクタンス行列をより確実にブロック対角行列とすることが可能となる。
【００８１】
又、本実施形態における第２分割回路３（図５）の電流源３０１、３０２夫々の両端に、演算部１４で行われる演算が発散するのを防止するための模擬抵抗が設けられていることとしてもよい。
【００８２】
又、本実施形態では、演算部１４が区分線形回路演算部１４１、１４３、線形回路演算部１４２を有していることについて説明したが、これに限定されるものではない。例えば、回路分割部１２によって分割された非線形の分割回路、線形の分割回路夫々の数に対応する数の区分線形回路演算部、線形回路演算部を演算部１４が有していることとする。
【００８３】
又、本実施形態における回路分割部１２の代わりに他の回路分割部（不図示）がシミュレーション装置１に設けられていることとしてもよい。他の回路分割部は、節点解析法又は修正節点解析法を用いて生成された模擬回路１００を示す状態方程式に基づいて、模擬回路１００を分割する。この場合、実装部１３は、他の回路分割部によって分割された分割回路を演算部１４に実装する。
【符号の説明】
【００８４】
１              シミュレーション装置
１２            回路分割部
１４            演算部
１００          模擬回路
１４１、１４３  区分線形回路演算部
１４２          線形回路演算部
【図１】
0006379722.tif 000011
【図２】
0006379722.tif 000012
【図３】
0006379722.tif 000013
【図４】
0006379722.tif 000014
【図５】
0006379722.tif 000015
【図６】
0006379722.tif 000016
【図７】
0006379722.tif 000017
【図８】
0006379722.tif 000018