JPH0683900A - 系のシミュレーション方法およびシミュレーションシステム - Google Patents
系のシミュレーション方法およびシミュレーションシステムInfo
- Publication number
- JPH0683900A JPH0683900A JP9460593A JP9460593A JPH0683900A JP H0683900 A JPH0683900 A JP H0683900A JP 9460593 A JP9460593 A JP 9460593A JP 9460593 A JP9460593 A JP 9460593A JP H0683900 A JPH0683900 A JP H0683900A
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- configuration information
- executable program
- client
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Devices For Executing Special Programs (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
(57)【要約】
【目的】 系の構成情報を読み込み直さなくてもシミュ
レーションを繰り返し行えるようすることにより、処理
時間の短縮を図る。 【構成】 解析対象となる系の構成情報を読み込んで実
行形プログラムを生成し、該実行形プログラムの実行時
に系への入力を表す情報を読み込んで系の出力を求め
る。 【効果】 生成された実行形は、系の定義情報の読み込
みを行わないため、複数の入力条件に対してそれぞれ出
力を計算する場合にそのつど系の定義情報を読み込む必
要がなく、シミュレーションの処理時間を節約できる。
レーションを繰り返し行えるようすることにより、処理
時間の短縮を図る。 【構成】 解析対象となる系の構成情報を読み込んで実
行形プログラムを生成し、該実行形プログラムの実行時
に系への入力を表す情報を読み込んで系の出力を求め
る。 【効果】 生成された実行形は、系の定義情報の読み込
みを行わないため、複数の入力条件に対してそれぞれ出
力を計算する場合にそのつど系の定義情報を読み込む必
要がなく、シミュレーションの処理時間を節約できる。
Description
【0001】
【産業上の利用分野】本発明は、解析対象となる系の入
力に基づいて系の出力をシミュレーションする方法に関
するものである。
力に基づいて系の出力をシミュレーションする方法に関
するものである。
【0002】
【従来の技術】解析対象となる系の入力に基づいて系の
出力をシミュレーションする方法として例えば、電子回
路の過渡応答解析の場合、カラハン(Calahan)著「コン
ピュータによる電子回路設計」 日刊工業新聞社(1974)
発行に記載の方法がある。これは、解析対象となる系の
構成情報と系への入力を定義する情報を読み込んで、し
かる後、系の出力を算出している。
出力をシミュレーションする方法として例えば、電子回
路の過渡応答解析の場合、カラハン(Calahan)著「コン
ピュータによる電子回路設計」 日刊工業新聞社(1974)
発行に記載の方法がある。これは、解析対象となる系の
構成情報と系への入力を定義する情報を読み込んで、し
かる後、系の出力を算出している。
【0003】以下、図6のフローチャートを用いて従来
のシミュレータの動作を簡単に説明する。シミュレータ
は、まず、解析対象を記述するデータを読み込み(10
00)、次に入力波形を記述するデータを読み込み(1
001)、解析対象記述データと入力波形記述データと
に基づいて出力波形を計算し(1002)、この計算結
果を出力する(1003)。
のシミュレータの動作を簡単に説明する。シミュレータ
は、まず、解析対象を記述するデータを読み込み(10
00)、次に入力波形を記述するデータを読み込み(1
001)、解析対象記述データと入力波形記述データと
に基づいて出力波形を計算し(1002)、この計算結
果を出力する(1003)。
【0004】図7は、図6ステップ1000のデータ読
み込み部分の実現方法の一例を示したものである。例と
して、解析対象の構成が文字列“abcdef”で表さ
れるとすると、図6のステップ1000ではサブルーチ
ン1102が起動され、これにより、外部ファイル11
01から構成情報を表わす文字列“abcdef”が読
み込まれポインタxの示す記憶領域にセットされる(1
103)。
み込み部分の実現方法の一例を示したものである。例と
して、解析対象の構成が文字列“abcdef”で表さ
れるとすると、図6のステップ1000ではサブルーチ
ン1102が起動され、これにより、外部ファイル11
01から構成情報を表わす文字列“abcdef”が読
み込まれポインタxの示す記憶領域にセットされる(1
103)。
【0005】その他、系の挙動を計算機上でシミュレー
ションする方法として例えば、電子回路の回路解析の場
合、特開昭60-107176号「回路解析並列化データ処理方
式」に記載の方法がある。これには、アレイ/ベクトル
プロセッサを有する計算機に適したアルゴリズムを工夫
するより、回路の解析を高速に行う方法が述べられてい
る。
ションする方法として例えば、電子回路の回路解析の場
合、特開昭60-107176号「回路解析並列化データ処理方
式」に記載の方法がある。これには、アレイ/ベクトル
プロセッサを有する計算機に適したアルゴリズムを工夫
するより、回路の解析を高速に行う方法が述べられてい
る。
【0006】
【発明が解決しようとする課題】しかし、従来の方法で
は、ある系を解析するに当たって複数の入力条件に対し
てそれぞれ出力を計算する場合、系の構成情報は不変で
あるにもかかわらず、シミュレーションを行う度に系の
定義情報もいちいち読み込みなおさなければならず、処
理時間がかかり、効率的なシミュレーション実行に支障
があった。
は、ある系を解析するに当たって複数の入力条件に対し
てそれぞれ出力を計算する場合、系の構成情報は不変で
あるにもかかわらず、シミュレーションを行う度に系の
定義情報もいちいち読み込みなおさなければならず、処
理時間がかかり、効率的なシミュレーション実行に支障
があった。
【0007】また、従来の方法では、系の記述を修正し
てシミュレーションし直す際に、系を記述したデータを
書き直す必要があり、試行錯誤的シミュレーションを効
率的に行うことが困難であった。
てシミュレーションし直す際に、系を記述したデータを
書き直す必要があり、試行錯誤的シミュレーションを効
率的に行うことが困難であった。
【0008】さらに、複数の利用者が一台の計算機上で
一時にシミュレーションを行う場合、すなわちTSS等
の方法によって、一台の計算機上で複数のシミュレーシ
ョンを同時に行う場合には、個々のシミュレーションに
要するCPU時間が短くても、利用者が実際に解を得る
までの時間は長くなるという問題があった。かかる問題
を解決する方法として、複数の計算機を用意しておき、
それぞれの計算機にシミュレータを置き、計算機一台当
たりの利用者数を少なくする方法が考えられるが、この
方法の場合、複数のシミュレータを用意しておくため、
シミュレータの保守作業が繁雑になる。特に、シミュレ
ータのバージョンアップ等の際に一部のシミュレータの
バージョンアップ作業洩れ等が発生する可能性があり、
それぞれのシミュレータが全て同一の機能を持つという
保証がなされない。また、複数の計算機を利用する場
合、計算機の機械語命令体系が異なることがあり、この
場合にもシミュレータの保守作業が繁雑になる。
一時にシミュレーションを行う場合、すなわちTSS等
の方法によって、一台の計算機上で複数のシミュレーシ
ョンを同時に行う場合には、個々のシミュレーションに
要するCPU時間が短くても、利用者が実際に解を得る
までの時間は長くなるという問題があった。かかる問題
を解決する方法として、複数の計算機を用意しておき、
それぞれの計算機にシミュレータを置き、計算機一台当
たりの利用者数を少なくする方法が考えられるが、この
方法の場合、複数のシミュレータを用意しておくため、
シミュレータの保守作業が繁雑になる。特に、シミュレ
ータのバージョンアップ等の際に一部のシミュレータの
バージョンアップ作業洩れ等が発生する可能性があり、
それぞれのシミュレータが全て同一の機能を持つという
保証がなされない。また、複数の計算機を利用する場
合、計算機の機械語命令体系が異なることがあり、この
場合にもシミュレータの保守作業が繁雑になる。
【0009】本発明の目的は、入力条件毎に系の構成情
報を読み込み直さなくてもシミュレーションを繰り返し
行えるようすることにより、効率的なシミュレーション
を行うことができる系のシミュレーション方法を提供す
ることにある。
報を読み込み直さなくてもシミュレーションを繰り返し
行えるようすることにより、効率的なシミュレーション
を行うことができる系のシミュレーション方法を提供す
ることにある。
【0010】本発明の別の目的は、系を部分的に修正す
る場合、元のデータを書き直さなくてもよく、試行錯誤
的シミュレーション繰返し作業を容易にすることができ
る系のシミュレーション方法を提供することにある。
る場合、元のデータを書き直さなくてもよく、試行錯誤
的シミュレーション繰返し作業を容易にすることができ
る系のシミュレーション方法を提供することにある。
【0011】本発明の他の目的は、単一のシミュレータ
のみを用意してシミュレータの保守作業を容易にすると
同時にシミュレーションの実行を複数の計算機で分散し
てシミュレーションの効率向上を図ることにある。
のみを用意してシミュレータの保守作業を容易にすると
同時にシミュレーションの実行を複数の計算機で分散し
てシミュレーションの効率向上を図ることにある。
【0012】本発明のさらに他の目的は、単一のシミュ
レータのみを用意してシミュレータの保守作業を容易に
するとともに、シミュレーションを実行する計算機の機
械語命令体系が異なる計算機でもこのシミュレータを利
用できるようにすることにある。
レータのみを用意してシミュレータの保守作業を容易に
するとともに、シミュレーションを実行する計算機の機
械語命令体系が異なる計算機でもこのシミュレータを利
用できるようにすることにある。
【0013】
【課題を解決するための手段】本発明による系のシミュ
レーション方法は、解析対象となる系の構成情報を読み
込んで実行形プログラムを生成し、該実行形プログラム
の実行時に系への入力を表す情報を読み込んで系の出力
を求めることを特徴とするものである。
レーション方法は、解析対象となる系の構成情報を読み
込んで実行形プログラムを生成し、該実行形プログラム
の実行時に系への入力を表す情報を読み込んで系の出力
を求めることを特徴とするものである。
【0014】前記実行形プログラムを生成するシミュレ
ータコンパイラの処理の一部として、例えば、前記系の
構成情報を読み込み、該読み込んだ構成情報を所定の記
憶領域にセットするプログラムを生成する。
ータコンパイラの処理の一部として、例えば、前記系の
構成情報を読み込み、該読み込んだ構成情報を所定の記
憶領域にセットするプログラムを生成する。
【0015】前記構成情報に、系の特性を決めるパラメ
ータを定義し、該パラメータを含んだ構成情報に基づき
前記実行形プログラムを生成し、実行形プログラムの実
行時に系への入力を表す情報とパラメータ値とを入力フ
ァイルから読み込んで系の出力を求めることもできる。
ータを定義し、該パラメータを含んだ構成情報に基づき
前記実行形プログラムを生成し、実行形プログラムの実
行時に系への入力を表す情報とパラメータ値とを入力フ
ァイルから読み込んで系の出力を求めることもできる。
【0016】また、前記構成情報中にパラメータを定義
するとともに該パラメータのデフォルト値を定義してお
き、前記パラメータ値が入力ファイル内に定義されてい
ないとき、前記構成情報中で定義されたデフォルト値を
パラメータ値として用いることも可能である。
するとともに該パラメータのデフォルト値を定義してお
き、前記パラメータ値が入力ファイル内に定義されてい
ないとき、前記構成情報中で定義されたデフォルト値を
パラメータ値として用いることも可能である。
【0017】さらに、複数の系に対して、各系の構成情
報を読み込んでそれぞれ実行形プログラムを生成し、あ
る実行形プログラムの出力を他の実行形プログラムの入
力としながら複数の実行形プログラムを実行し、複数の
系が複合してできる系のシミュレーションを行うように
してもよい。
報を読み込んでそれぞれ実行形プログラムを生成し、あ
る実行形プログラムの出力を他の実行形プログラムの入
力としながら複数の実行形プログラムを実行し、複数の
系が複合してできる系のシミュレーションを行うように
してもよい。
【0018】この場合、複合される系の一つとして複数
の実行形プログラムを用意しておき、該複数の実行形プ
ログラムの一つを含む複合された系のシミュレーション
を行い、該シミュレーション結果に応じて前記複数の実
行形プログラムの前記一つを別の実行形プログラムに差
し替えてシミュレーションを繰り返すことも可能であ
る。
の実行形プログラムを用意しておき、該複数の実行形プ
ログラムの一つを含む複合された系のシミュレーション
を行い、該シミュレーション結果に応じて前記複数の実
行形プログラムの前記一つを別の実行形プログラムに差
し替えてシミュレーションを繰り返すことも可能であ
る。
【0019】本発明による別のシミュレーション方法
は、複数の計算機を備えたシステムにおける系のシミュ
レーション方法であって、前記複数の計算機の1台(以
下、サーバという)に、系のシミュレーション用のコン
パイラを設け、前記複数の計算機のうち前記サーバ以外
の計算機(以下、クライアントという)から、解析対象
となる系の構成情報を前記サーバに送信し、前記サーバ
は前記系の構成情報を受信して、該構成情報に基づき前
記コンパイラにより実行形プログラムを生成した後、該
実行形プログラムを前記構成情報の送信元であるクライ
アントへ送信し、当該クライアントは、前記実行形プロ
グラムを受信して、該実行形プログラムを実行すること
により、前記構成情報により表わされる系のシミュレー
ションを行うことを特徴とするものである。
は、複数の計算機を備えたシステムにおける系のシミュ
レーション方法であって、前記複数の計算機の1台(以
下、サーバという)に、系のシミュレーション用のコン
パイラを設け、前記複数の計算機のうち前記サーバ以外
の計算機(以下、クライアントという)から、解析対象
となる系の構成情報を前記サーバに送信し、前記サーバ
は前記系の構成情報を受信して、該構成情報に基づき前
記コンパイラにより実行形プログラムを生成した後、該
実行形プログラムを前記構成情報の送信元であるクライ
アントへ送信し、当該クライアントは、前記実行形プロ
グラムを受信して、該実行形プログラムを実行すること
により、前記構成情報により表わされる系のシミュレー
ションを行うことを特徴とするものである。
【0020】本発明を適用できる系の具体例として以下
に列挙する。
に列挙する。
【0021】(1)系の構成情報が解析対象の形状と支
配方程式を記述する情報であり、入力を表わす情報は系
の境界条件を表す情報であり、出力が解析結果であるも
の。 (2)系の構成情報が解析対象の形状と構造力学的特性
を記述する情報であり、入力を表わす情報が系の境界条
件を表す情報であり、出力が応力場および振動モードの
少なくとも一方であるもの。
配方程式を記述する情報であり、入力を表わす情報は系
の境界条件を表す情報であり、出力が解析結果であるも
の。 (2)系の構成情報が解析対象の形状と構造力学的特性
を記述する情報であり、入力を表わす情報が系の境界条
件を表す情報であり、出力が応力場および振動モードの
少なくとも一方であるもの。
【0022】(3)系の構成情報が解析対象の形状と熱
伝導特性を記述する情報であり、入力を表わす情報が解
析対象内部と境界の温度分布と熱伝達条件を表す情報で
あり、出力が解析対象の温度分布であるもの。
伝導特性を記述する情報であり、入力を表わす情報が解
析対象内部と境界の温度分布と熱伝達条件を表す情報で
あり、出力が解析対象の温度分布であるもの。
【0023】(4)系の構成情報が解析対象の形状と電
磁気的特性を記述する情報であり、入力を表わす情報が
解析対象内部と境界条件を表す情報であり、出力が解析
対象の電磁場であるもの。
磁気的特性を記述する情報であり、入力を表わす情報が
解析対象内部と境界条件を表す情報であり、出力が解析
対象の電磁場であるもの。
【0024】(5)系の構成情報が解析対象の形状と流
体力学的特性を記述する情報であり、入力を表わす情報
が解析対象の境界条件を表す情報であり、出力が解析対
象内部の流れの場であるもの。
体力学的特性を記述する情報であり、入力を表わす情報
が解析対象の境界条件を表す情報であり、出力が解析対
象内部の流れの場であるもの。
【0025】(6)系の構成情報が解析対象が従う運動
方程式を記述する情報であり、入力を表わす情報が解析
対象の初期条件と対象に作用する力を表す情報であり、
出力が解析対象の運動の結果であるもの。
方程式を記述する情報であり、入力を表わす情報が解析
対象の初期条件と対象に作用する力を表す情報であり、
出力が解析対象の運動の結果であるもの。
【0026】なお、本発明は、系のシミュレーションの
ためのコンパイルを行うが、系のシミュレーションだけ
でなく、一般のソースファイル、さらにはエキスパート
システムにおける知識表現言語のコンパイルにも応用す
ることができる。
ためのコンパイルを行うが、系のシミュレーションだけ
でなく、一般のソースファイル、さらにはエキスパート
システムにおける知識表現言語のコンパイルにも応用す
ることができる。
【0027】
【作用】本発明において、まず系の構成情報を読み込ん
で、コンパイラにより、系の構成情報を内蔵した実行形
プログラムを生成する。この生成された実行形プログラ
ムは、その実行時に、系への入力情報を読み込んで系か
らの出力を求める。
で、コンパイラにより、系の構成情報を内蔵した実行形
プログラムを生成する。この生成された実行形プログラ
ムは、その実行時に、系への入力情報を読み込んで系か
らの出力を求める。
【0028】本発明によれば、実行形プログラムの実行
時、すなわちシミュレーション実行時に、系の定義情報
の読み込みを行わないため、複数の入力条件に対してそ
れぞれ出力を計算する場合にそのつど系の定義情報を読
み込む必要がない。
時、すなわちシミュレーション実行時に、系の定義情報
の読み込みを行わないため、複数の入力条件に対してそ
れぞれ出力を計算する場合にそのつど系の定義情報を読
み込む必要がない。
【0029】また、複数の系に対して、各系の構成情報
を読み込んでそれぞれ実行形プログラムを生成し、ある
実行形プログラムの出力を他の実行形プログラムの入力
としながら実行形プログラムを実行することにより複数
の系が複合してできる系のシミュレーションを行うこと
ができるため、ある実行形プログラムをあらかじめ用意
した他の実行形プログラムと差し替えることにより、元
のデータを変更しなくても解析対象系の修正ができ、試
行錯誤的シミュレーション繰返し作業を容易にできる。
を読み込んでそれぞれ実行形プログラムを生成し、ある
実行形プログラムの出力を他の実行形プログラムの入力
としながら実行形プログラムを実行することにより複数
の系が複合してできる系のシミュレーションを行うこと
ができるため、ある実行形プログラムをあらかじめ用意
した他の実行形プログラムと差し替えることにより、元
のデータを変更しなくても解析対象系の修正ができ、試
行錯誤的シミュレーション繰返し作業を容易にできる。
【0030】さらに、複数の計算機を利用する場合に
は、シミュレーションのための系の構成情報のコンパイ
ラ(シミュレータ)は、サーバのみが持つため、複数の
シミュレータの保守が必要となるという従来の問題は回
避される。複数利用者がサーバ上で行うのは、実行形プ
ログラムへのコンパイルのみであり、実際のシミュレー
ションを実行させるのは、実行形プログラムを受け取る
複数のクライアントである。これにより、一台のクライ
アント当たりが実行するシミュレーションの数を少なく
することができる。コンパイルに要する計算時間は短
く、シミュレーション実行に要する計算時間は長大であ
るため、単一のシミュレータのみを用意してシミュレー
タの保守作業を容易にするとともに、シミュレーション
の実行を複数の計算機で分散してシミュレーションの効
率向上を図ることができる。
は、シミュレーションのための系の構成情報のコンパイ
ラ(シミュレータ)は、サーバのみが持つため、複数の
シミュレータの保守が必要となるという従来の問題は回
避される。複数利用者がサーバ上で行うのは、実行形プ
ログラムへのコンパイルのみであり、実際のシミュレー
ションを実行させるのは、実行形プログラムを受け取る
複数のクライアントである。これにより、一台のクライ
アント当たりが実行するシミュレーションの数を少なく
することができる。コンパイルに要する計算時間は短
く、シミュレーション実行に要する計算時間は長大であ
るため、単一のシミュレータのみを用意してシミュレー
タの保守作業を容易にするとともに、シミュレーション
の実行を複数の計算機で分散してシミュレーションの効
率向上を図ることができる。
【0031】また、シミュレータは、サーバホストのみ
が持ち、クライアントホストの種別に応じて生成される
実行形プログラムが異なるようにすることができるた
め、単一のシミュレータのみを用意してシミュレータの
保守作業を容易にするとともに、シミュレーションを実
行する計算機の機械語命令体系が異なる計算機でもこの
シミュレータを利用できるようにすることができる。
が持ち、クライアントホストの種別に応じて生成される
実行形プログラムが異なるようにすることができるた
め、単一のシミュレータのみを用意してシミュレータの
保守作業を容易にするとともに、シミュレーションを実
行する計算機の機械語命令体系が異なる計算機でもこの
シミュレータを利用できるようにすることができる。
【0032】
【実施例】以下、本発明の実施例を図面により詳細に説
明する。
明する。
【0033】まず、図2により、本発明によるシミュレ
ーション方法を実施する装置を説明する。1は計算機本
体を示し、2はディスプレイ、3はキーボードを示す。
4は外部記憶装置である。また、5はCPUを示し、6
は主記憶を示す。シミュレーションは、主記憶6に格納
された実行形プログラムに基づいて、CPU5が実行す
る。その際、入力波形のデータはキーボード3または外
部記憶装置4から入力される。実行形プログラムは、系
の構成情報に基づいて後述するコンパイラにより作成さ
れる。コンパイラ自体のプログラムもCPU5で実行さ
せることができる。
ーション方法を実施する装置を説明する。1は計算機本
体を示し、2はディスプレイ、3はキーボードを示す。
4は外部記憶装置である。また、5はCPUを示し、6
は主記憶を示す。シミュレーションは、主記憶6に格納
された実行形プログラムに基づいて、CPU5が実行す
る。その際、入力波形のデータはキーボード3または外
部記憶装置4から入力される。実行形プログラムは、系
の構成情報に基づいて後述するコンパイラにより作成さ
れる。コンパイラ自体のプログラムもCPU5で実行さ
せることができる。
【0034】図1は、本実施例によるシミュレーション
方法を説明するための図である。シミュレータコンパイ
ラ10は、系の構成情報30を読み込み、実行形プログ
ラム(オブジェクトプログラム)20を生成する。実行
形プログラム20は、系への入力波形を読み込み、系か
らの出力波形を算出する。実行形プログラム20には既
に系の構成情報30が取り込まれているので、シミュレ
ーション実行時(実行形プログラム20の実行時)には
入力波形が変わっても、系の構成が変わらない限り、異
なる入力波形を読み込むだけでよく、従来のように同じ
構成情報を読み込む必要はなくなる。以下により詳細な
説明を行う。
方法を説明するための図である。シミュレータコンパイ
ラ10は、系の構成情報30を読み込み、実行形プログ
ラム(オブジェクトプログラム)20を生成する。実行
形プログラム20は、系への入力波形を読み込み、系か
らの出力波形を算出する。実行形プログラム20には既
に系の構成情報30が取り込まれているので、シミュレ
ーション実行時(実行形プログラム20の実行時)には
入力波形が変わっても、系の構成が変わらない限り、異
なる入力波形を読み込むだけでよく、従来のように同じ
構成情報を読み込む必要はなくなる。以下により詳細な
説明を行う。
【0035】本実施例では、回路の過渡応答シミュレー
ションを例に説明を行うが、解析対象となる系の定義と
系への入力の定義に基づいて系の出力を解析するシミュ
レーションであれば本発明を適用することができる。例
えば、回路の定常状態の解析を行う場合には、回路ブロ
ックの構成情報を読み込んで実行形プログラムを生成
し、実行形プログラムが回路ブロックへの入力電圧/入
力電流を表す情報を読み込んで回路ブロックからの出力
を算出することよりシミュレーションができる。論理回
路への入力信号に対する出力信号を解析する場合には、
論理回路の構成情報を読み込んで実行形プログラムを生
成し、実行形プログラムが論理回路への入力信号を表す
情報を読み込んで論理回路からの出力を算出することよ
りシミュレーションができる。伝達関数(関数式)によ
って記述される系を解析する場合には、伝達関数を読み
込んで実行形プログラムを生成し、実行形プログラムが
伝達関数への入力波形を表す情報を読み込んで伝達関数
からの出力を算出することよりシミュレーションができ
る。また、電子回路素子と論理回路と伝達関数が混在す
る系を解析する場合は、電子回路と論理回路と伝達関数
が混在して記述される系を表す情報を読み込んで実行形
プログラムを生成し、実行形プログラムが系への入力波
形を表す情報を読み込んで系からの出力を算出すること
よりシミュレーションができる。アナログ回路とディジ
タル回路が混在する系を解析する場合には、アナログ回
路とディジタル回路が混在する系を表す情報を読み込ん
で実行形プログラムを生成し、実行形プログラムが系へ
の入力波形を表す情報を読み込んで系からの出力を算出
することよりシミュレーションができる。いずれにおい
ても、系の構成が変わらない限り、実行形プログラムの
実行時に系の構成情報を入力する必要はない。
ションを例に説明を行うが、解析対象となる系の定義と
系への入力の定義に基づいて系の出力を解析するシミュ
レーションであれば本発明を適用することができる。例
えば、回路の定常状態の解析を行う場合には、回路ブロ
ックの構成情報を読み込んで実行形プログラムを生成
し、実行形プログラムが回路ブロックへの入力電圧/入
力電流を表す情報を読み込んで回路ブロックからの出力
を算出することよりシミュレーションができる。論理回
路への入力信号に対する出力信号を解析する場合には、
論理回路の構成情報を読み込んで実行形プログラムを生
成し、実行形プログラムが論理回路への入力信号を表す
情報を読み込んで論理回路からの出力を算出することよ
りシミュレーションができる。伝達関数(関数式)によ
って記述される系を解析する場合には、伝達関数を読み
込んで実行形プログラムを生成し、実行形プログラムが
伝達関数への入力波形を表す情報を読み込んで伝達関数
からの出力を算出することよりシミュレーションができ
る。また、電子回路素子と論理回路と伝達関数が混在す
る系を解析する場合は、電子回路と論理回路と伝達関数
が混在して記述される系を表す情報を読み込んで実行形
プログラムを生成し、実行形プログラムが系への入力波
形を表す情報を読み込んで系からの出力を算出すること
よりシミュレーションができる。アナログ回路とディジ
タル回路が混在する系を解析する場合には、アナログ回
路とディジタル回路が混在する系を表す情報を読み込ん
で実行形プログラムを生成し、実行形プログラムが系へ
の入力波形を表す情報を読み込んで系からの出力を算出
することよりシミュレーションができる。いずれにおい
ても、系の構成が変わらない限り、実行形プログラムの
実行時に系の構成情報を入力する必要はない。
【0036】図3に、本シミュレーション方法を説明す
るための解析対象の一例としての回路を示す。回路30
1は、抵抗と容量よりなるフィルタを表す。データ30
2は、回路301を構成を表現したもの構成情報であ
る。そのヘッダ3021は、このRC回路への入力がVi
nであり、出力がVoutであることを示し、ネットリスト
3022は、Vin、Voutがそれぞれどの節点間に定義さ
れるかを示すものである。また、ネットリスト302
3、3024は、抵抗と容量とがそれぞれどの節点間に
どのような定数をもって定義されるかを示すものであ
る。構成データ302はファイルとして記憶装置に格納
される。
るための解析対象の一例としての回路を示す。回路30
1は、抵抗と容量よりなるフィルタを表す。データ30
2は、回路301を構成を表現したもの構成情報であ
る。そのヘッダ3021は、このRC回路への入力がVi
nであり、出力がVoutであることを示し、ネットリスト
3022は、Vin、Voutがそれぞれどの節点間に定義さ
れるかを示すものである。また、ネットリスト302
3、3024は、抵抗と容量とがそれぞれどの節点間に
どのような定数をもって定義されるかを示すものであ
る。構成データ302はファイルとして記憶装置に格納
される。
【0037】図4は、図3の例で示した回路の構成デー
タ302をシミュレータコンパイラの入力として、実行
形(RC*で表す)を生成する様子を示したものであ
る。シミュレータコンパイラ10で生成された実行形例
202は、構成データ302で表わされた回路動作をシ
ミュレートする。すなわち、図5に示すように、ある入
力波形が回路302に入力された場合の回路302の出
力を解析する場合、入力波形を実行形202に入力する
と回路の出力波形が計算され出力される。
タ302をシミュレータコンパイラの入力として、実行
形(RC*で表す)を生成する様子を示したものであ
る。シミュレータコンパイラ10で生成された実行形例
202は、構成データ302で表わされた回路動作をシ
ミュレートする。すなわち、図5に示すように、ある入
力波形が回路302に入力された場合の回路302の出
力を解析する場合、入力波形を実行形202に入力する
と回路の出力波形が計算され出力される。
【0038】以下にシミュレータコンパイラ10の実現
方法を説明する。
方法を説明する。
【0039】図8により、本実施例で用いる系定義サブ
ルーチンについて説明する。系定義サブルーチン生成処
理により、図3の302に示したような解析対象の構成
(記述)データ1101を読み込んで、プログラム(系
定義サブルーチン)1201を生成する。この系定義サ
ブルーチン1201は、読み込んだ文字列をポインタx
の示す記憶領域にセットするためのサブルーチンであ
る。このサブルーチンは、後述するようにシミュレータ
コンパイラ内に組み込まれるものである。
ルーチンについて説明する。系定義サブルーチン生成処
理により、図3の302に示したような解析対象の構成
(記述)データ1101を読み込んで、プログラム(系
定義サブルーチン)1201を生成する。この系定義サ
ブルーチン1201は、読み込んだ文字列をポインタx
の示す記憶領域にセットするためのサブルーチンであ
る。このサブルーチンは、後述するようにシミュレータ
コンパイラ内に組み込まれるものである。
【0040】図9に、本実施例におけるシミュレータコ
ンパイラの処理を表わすフローチャートを示す。ステッ
プ1200は、図8の系定義サブルーチン生成処理であ
る。続くステップ3002は、ステップ1200が生成
した系定義サブルーチン(図8の1201)と、先に示
した図6の後段プログラム(ステップ1001、100
2、1003)とをリンクするステップである。この図
9に示すコンパイラによって、図6に示すシミュレータ
の解析対象読み込みサブルーチン(第7図1102)を
図8の1201に差し替えた実行形プログラムが生成さ
れる。生成された実行形プログラムを図10にフローチ
ャートとして示す。
ンパイラの処理を表わすフローチャートを示す。ステッ
プ1200は、図8の系定義サブルーチン生成処理であ
る。続くステップ3002は、ステップ1200が生成
した系定義サブルーチン(図8の1201)と、先に示
した図6の後段プログラム(ステップ1001、100
2、1003)とをリンクするステップである。この図
9に示すコンパイラによって、図6に示すシミュレータ
の解析対象読み込みサブルーチン(第7図1102)を
図8の1201に差し替えた実行形プログラムが生成さ
れる。生成された実行形プログラムを図10にフローチ
ャートとして示す。
【0041】図10のプログラムを起動すると、まず、
ステップ1201で系定義サブルーチンが呼び出され、
実行される。これによって、従来のように外部ファイル
から構成データを読み込むことなく、ポインタxの示す
記憶領域に構成データがセットされる。その後、ステッ
プ1001で入力波形を読み込み、ステップ1002
で、系の定義情報(ステップ1201で定義される)と
入力波形とに基づいて出力波形を計算し、ステップ10
03で結果を出力する。この処理が、図1に示した実行
形プログラム20の行う処理である。この実行形プログ
ラムは、前述のように回路の構成情報を既に内蔵してい
るため、異なる入力波形に対してそのつど外部ファイル
から構成情報を読み込む必要がなく、処理時間を節約で
きる。
ステップ1201で系定義サブルーチンが呼び出され、
実行される。これによって、従来のように外部ファイル
から構成データを読み込むことなく、ポインタxの示す
記憶領域に構成データがセットされる。その後、ステッ
プ1001で入力波形を読み込み、ステップ1002
で、系の定義情報(ステップ1201で定義される)と
入力波形とに基づいて出力波形を計算し、ステップ10
03で結果を出力する。この処理が、図1に示した実行
形プログラム20の行う処理である。この実行形プログ
ラムは、前述のように回路の構成情報を既に内蔵してい
るため、異なる入力波形に対してそのつど外部ファイル
から構成情報を読み込む必要がなく、処理時間を節約で
きる。
【0042】また、図11に示すように、シミュレーシ
ョンの対象として系の定義情報(系の形状と支配方程
式)と系の境界条件とに基づいて系の状態を解析するシ
ミュレーション(例として、構造解析、振動解析、熱伝
導解析、電磁場解析、流体解析など)においては、系の
定義情報をコンパイルして実行形を生成し、この実行形
に境界条件を入力することにより系の解析を行うことが
できる。あるいは、解析対象が従う運動方程式を記述す
る情報を読み込んで実行形プログラムを生成し、実行形
プログラムが解析対象の初期条件と系に作用する力を表
す情報を読み込んで対象の運動を解析することにより系
の解析を行うことができる。
ョンの対象として系の定義情報(系の形状と支配方程
式)と系の境界条件とに基づいて系の状態を解析するシ
ミュレーション(例として、構造解析、振動解析、熱伝
導解析、電磁場解析、流体解析など)においては、系の
定義情報をコンパイルして実行形を生成し、この実行形
に境界条件を入力することにより系の解析を行うことが
できる。あるいは、解析対象が従う運動方程式を記述す
る情報を読み込んで実行形プログラムを生成し、実行形
プログラムが解析対象の初期条件と系に作用する力を表
す情報を読み込んで対象の運動を解析することにより系
の解析を行うことができる。
【0043】次に、本発明の第2の実施例について説明
する。図12に、入出力が定義される部分系が複合して
定義される系の例を示す。この系は、系1と系2の直列
接続よりなる。
する。図12に、入出力が定義される部分系が複合して
定義される系の例を示す。この系は、系1と系2の直列
接続よりなる。
【0044】図13により、系1と系2が複合してでき
る系を解析するための方法を説明する。シミュレータコ
ンパイラ10は、系1の構成情報31と系2の構成情報
32を読み込み、それぞれ実行形1(21)と実行形2
(22)とを生成する。実行形1は、入力波形40を読
み込み、系1からの出力波形を算出する。実行形2は、
実行形1の出力波形を読み込み、出力波形50を算出す
る。このようにして、系1と系2を直列接続した系に入
力波形40が入力された場合の出力を解析できる。 本
実施例のシミュレータコンパイラによって生成される実
行形プログラムをUNIXオペレーティングシステム上
で実行させる場合について説明する。入力波形を記述す
るデータファイルをfile1、実行形プログラムの名
称をcirc1とすると、file1に記述される入力
波形を実行形circ1に入力して行う解析は、シェル
上で、 circ1 < file1 とタイプすればよい。circ1の出力を別の実行形c
irc2の入力として解析する場合は、UNIXのパイ
プ処理機能を用いて、 circ1 < file1 | circ2 とタイプすればよい。
る系を解析するための方法を説明する。シミュレータコ
ンパイラ10は、系1の構成情報31と系2の構成情報
32を読み込み、それぞれ実行形1(21)と実行形2
(22)とを生成する。実行形1は、入力波形40を読
み込み、系1からの出力波形を算出する。実行形2は、
実行形1の出力波形を読み込み、出力波形50を算出す
る。このようにして、系1と系2を直列接続した系に入
力波形40が入力された場合の出力を解析できる。 本
実施例のシミュレータコンパイラによって生成される実
行形プログラムをUNIXオペレーティングシステム上
で実行させる場合について説明する。入力波形を記述す
るデータファイルをfile1、実行形プログラムの名
称をcirc1とすると、file1に記述される入力
波形を実行形circ1に入力して行う解析は、シェル
上で、 circ1 < file1 とタイプすればよい。circ1の出力を別の実行形c
irc2の入力として解析する場合は、UNIXのパイ
プ処理機能を用いて、 circ1 < file1 | circ2 とタイプすればよい。
【0045】部分系が複合してできる系は、図14に示
すような、複雑な系でもよい。例えば、部分系A501
は、外部からの入力と部分系Eからの出力を入力して、
その出力を部分系BとDに与える。シミュレータコンパ
イラは、各部分系(A、B、C、D、E)をそれぞれ実行形
にコンパイルすることができる(それぞれ、A*、B*、C
*、D*、E*と表記する)。そこで、図15に示すよう
に、A*の出力をB*とD*に入力し、B*の出力とD*の出力を
C*に入力し、C*の出力をA*に入力するように制御しなが
ら全ての実行形を実行させると図14の系をシミュレー
ションできる。この複数の実行形を複数の演算装置を用
いて並列実行させてもよい。
すような、複雑な系でもよい。例えば、部分系A501
は、外部からの入力と部分系Eからの出力を入力して、
その出力を部分系BとDに与える。シミュレータコンパ
イラは、各部分系(A、B、C、D、E)をそれぞれ実行形
にコンパイルすることができる(それぞれ、A*、B*、C
*、D*、E*と表記する)。そこで、図15に示すよう
に、A*の出力をB*とD*に入力し、B*の出力とD*の出力を
C*に入力し、C*の出力をA*に入力するように制御しなが
ら全ての実行形を実行させると図14の系をシミュレー
ションできる。この複数の実行形を複数の演算装置を用
いて並列実行させてもよい。
【0046】また、実行形A*のかわりに、A1*、A2*、
A3*、…等の代替実行形を予め用意しておき、図16に
示すように、シミュレーション実行(901)による実
行結果をモニタし(902)、さらにシミュレーション
結果に依存して新しい代替実行形を選び(903)、シ
ミュレーションをやり直す(904)、というシミュレ
ーション制御も行うことができる。
A3*、…等の代替実行形を予め用意しておき、図16に
示すように、シミュレーション実行(901)による実
行結果をモニタし(902)、さらにシミュレーション
結果に依存して新しい代替実行形を選び(903)、シ
ミュレーションをやり直す(904)、というシミュレ
ーション制御も行うことができる。
【0047】この具体例を図19により説明する。本例
は、回路circ1の候補を複数用意し、circ1と
circ2とを接続した回路の仕様を満たすものを一つ
見つけようとするシミュレーション例である。まず、c
irc1の候補として実行形c0,c1,c2,c3,
c4,c5を、予めコンパイルして用意しておく。説明
を簡単にするために、実行形c0,c1,c2,c3,
c4,c5をcirc2と結合したとき、番号の大きい
ものほど、circ2の出力値が大きくなることが分か
っているものとする。また、本例での要求仕様とは、c
irc1とcirc2の結合した回路の出力がTLより
大きく、かつTUより小さくなることとする。図19の
ステップ910では、配列に候補名をセットし、最初の
シミュレーションとして実行形c3を選択する。ステッ
プ901では、シミュレーションの実行を行い、その結
果をステップ902で判定し、この判定結果によって次
にシミュレーションを行うべき候補を選択し(90
3)、再度実行を繰り返す(901)。最終的に、要求
仕様に合致する実行形が存在すればその番号iが出力さ
れ、存在しなければ処理を終了する。
は、回路circ1の候補を複数用意し、circ1と
circ2とを接続した回路の仕様を満たすものを一つ
見つけようとするシミュレーション例である。まず、c
irc1の候補として実行形c0,c1,c2,c3,
c4,c5を、予めコンパイルして用意しておく。説明
を簡単にするために、実行形c0,c1,c2,c3,
c4,c5をcirc2と結合したとき、番号の大きい
ものほど、circ2の出力値が大きくなることが分か
っているものとする。また、本例での要求仕様とは、c
irc1とcirc2の結合した回路の出力がTLより
大きく、かつTUより小さくなることとする。図19の
ステップ910では、配列に候補名をセットし、最初の
シミュレーションとして実行形c3を選択する。ステッ
プ901では、シミュレーションの実行を行い、その結
果をステップ902で判定し、この判定結果によって次
にシミュレーションを行うべき候補を選択し(90
3)、再度実行を繰り返す(901)。最終的に、要求
仕様に合致する実行形が存在すればその番号iが出力さ
れ、存在しなければ処理を終了する。
【0048】次に、図17により本発明の第3の実施異
例を説明する。回路のシミュレーション等において、回
路要素のパラメータ値を変更したい場合がある。このよ
うな場合、パラメータ値を変える度にコンパイルをやり
直すのは煩雑である。そこで、本実施例では、図17の
2100に示すようにパラメータ変数(抵抗rおよび容
量c)を宣言し、シミュレータコンパイラ2101によ
り生成される実行形2102は、系への入力波形とパラ
メータの値(ファイルから読み込む場合を例として図1
8にファイルの例を示す)を読み込んで、系からの出力
波形を算出するようにする。このようにすると、解析対
象のパラメータ値をかえても再コンパイルする必要がな
くなり、作業効率が向上する。また、シミュレーション
結果に依存して新しいパラメータ値を決定する方法を用
意し、シミュレーション結果に依存させてシミュレーシ
ョンをやり直すというシミュレーション制御ができる。
また、第2の実施例に述べた複数の実行形からなるシミ
ュレーション制御方法と本第3の実施例のパラメータを
変化させるシミュレーション制御方法を組み合せ、シミ
ュレーション結果に応じて部分回路の差し替えとパラメ
ータの変化の両方を行った後シミュレーションを繰り返
すようにすることも可能である。
例を説明する。回路のシミュレーション等において、回
路要素のパラメータ値を変更したい場合がある。このよ
うな場合、パラメータ値を変える度にコンパイルをやり
直すのは煩雑である。そこで、本実施例では、図17の
2100に示すようにパラメータ変数(抵抗rおよび容
量c)を宣言し、シミュレータコンパイラ2101によ
り生成される実行形2102は、系への入力波形とパラ
メータの値(ファイルから読み込む場合を例として図1
8にファイルの例を示す)を読み込んで、系からの出力
波形を算出するようにする。このようにすると、解析対
象のパラメータ値をかえても再コンパイルする必要がな
くなり、作業効率が向上する。また、シミュレーション
結果に依存して新しいパラメータ値を決定する方法を用
意し、シミュレーション結果に依存させてシミュレーシ
ョンをやり直すというシミュレーション制御ができる。
また、第2の実施例に述べた複数の実行形からなるシミ
ュレーション制御方法と本第3の実施例のパラメータを
変化させるシミュレーション制御方法を組み合せ、シミ
ュレーション結果に応じて部分回路の差し替えとパラメ
ータの変化の両方を行った後シミュレーションを繰り返
すようにすることも可能である。
【0049】なお、図17のパラメータ宣言2100に
は、デフォルト値として、抵抗値および容量値を定義し
ている。したがって、新しいパラメータ値が実行形の入
力ファイル中に定義されていない場合は、系の構成情報
を定義するファイル中で定義されたパラメータ値をデフ
ォルト値としてシミュレーション時に用いることができ
る。
は、デフォルト値として、抵抗値および容量値を定義し
ている。したがって、新しいパラメータ値が実行形の入
力ファイル中に定義されていない場合は、系の構成情報
を定義するファイル中で定義されたパラメータ値をデフ
ォルト値としてシミュレーション時に用いることができ
る。
【0050】次に、本発明の第4の実施例を説明する。
本実施例は、ネットワークを利用したシミュレーション
方法に関する。以下に説明する実施例は、上記の実施例
と組み合わせることが可能である。
本実施例は、ネットワークを利用したシミュレーション
方法に関する。以下に説明する実施例は、上記の実施例
と組み合わせることが可能である。
【0051】まず、図21、図22により本発明のシミ
ュレーション方法を実施する装置を説明する。図21の
210、220、230は、計算機を表し、210は、
サーバホスト、220,230は、クライアントホス
ト、240は、計算機を繋ぐネットワークを示す。クラ
イアントホストの台数は任意である。
ュレーション方法を実施する装置を説明する。図21の
210、220、230は、計算機を表し、210は、
サーバホスト、220,230は、クライアントホス
ト、240は、計算機を繋ぐネットワークを示す。クラ
イアントホストの台数は任意である。
【0052】各計算機は、図22に示す構造を持つ。2
21は計算機本体を示し、222はディスプレイ、22
3はキーボードを示す。224は外部記憶装置である。
225はCPU、226は主記憶、227はネットワー
クインタフェースボードを示す。実行形プログラムを生
成するプログラムは、サーバホスト210のCPUで実
行され、解析対象系の構成情報の作成およびシミュレー
ションの実行は、クライアントホスト220または23
0のCPUで実行させることができる。
21は計算機本体を示し、222はディスプレイ、22
3はキーボードを示す。224は外部記憶装置である。
225はCPU、226は主記憶、227はネットワー
クインタフェースボードを示す。実行形プログラムを生
成するプログラムは、サーバホスト210のCPUで実
行され、解析対象系の構成情報の作成およびシミュレー
ションの実行は、クライアントホスト220または23
0のCPUで実行させることができる。
【0053】図20は、本実施例によるシミュレーショ
ン方法を説明するための図である。クライアントホスト
がもつクライアントプログラム(1000)は、サーバ
ホストのCPUで実行されているサーバプログラム(2
000)に接続要求の信号を送り、クライアントプログ
ラムとサーバプログラム間でデータの授受ができる状態
にする(ステップ1100)。この接続は、例えば、ソ
ケットインタフェースによって行うことができる。接続
がなされるとクライアントプログラムは解析対象系の構
成情報をサーバホストに送信する(ステップ120
0)。サーバホストは、解析対象系の構成情報を受信し
(ステップ2300)、コンパイルを実行して解析対象
系の構成情報を実行形プログラムに変換する(ステップ
2400)。サーバホストは、コンパイルの成否結果を
クライアントに送信し(ステップ2500)、コンパイ
ルが成功した場合には、実行形プログラムをクライアン
トホストに返送し(ステップ2700)し、コンパイル
が失敗した場合には、エラーメッセージをクライアント
ホストに返送する(ステップ2800)。クライアント
プログラムは、実行形プログラムまたはエラーメッセー
ジを受信する。しかる後、クライアントホストのCPU
で、シミュレーションが実行される。二人のユーザが同
時にシミュレータを使用する場合、ユーザAは図21の
クライアントホスト20を使用し、ユーザBは、クライ
アントホスト30を使用すれば、系の構成情報の実行形
プログラムへの変換はサーバホスト10のCPUによっ
て行われ、シミュレーションの実行は、クライアントホ
スト20のCPUとクライアントホスト30のCPUを
それぞれ用いて行われることになる。コンパイルに要す
る計算時間は短く、シミュレーション実行に要する計算
時間は長大であるため、一つのCPUを二人でTSS等
により同時に使う方法に比べ、結果入手までの時間を短
縮することができる。また、シミュレータのアルゴリズ
ムは、サーバホスト中のコンパイラのみに内在されてい
るため、各計算機にシミュレーションプログラムを格納
してシミュレーションを行う場合と異なり、計算機によ
ってシミュレータの機能が異なるという問題が生じな
い。なお、クライアントホストでのシミュレーションの
実行は、クライアントプログラムを終了した後でもよ
い。
ン方法を説明するための図である。クライアントホスト
がもつクライアントプログラム(1000)は、サーバ
ホストのCPUで実行されているサーバプログラム(2
000)に接続要求の信号を送り、クライアントプログ
ラムとサーバプログラム間でデータの授受ができる状態
にする(ステップ1100)。この接続は、例えば、ソ
ケットインタフェースによって行うことができる。接続
がなされるとクライアントプログラムは解析対象系の構
成情報をサーバホストに送信する(ステップ120
0)。サーバホストは、解析対象系の構成情報を受信し
(ステップ2300)、コンパイルを実行して解析対象
系の構成情報を実行形プログラムに変換する(ステップ
2400)。サーバホストは、コンパイルの成否結果を
クライアントに送信し(ステップ2500)、コンパイ
ルが成功した場合には、実行形プログラムをクライアン
トホストに返送し(ステップ2700)し、コンパイル
が失敗した場合には、エラーメッセージをクライアント
ホストに返送する(ステップ2800)。クライアント
プログラムは、実行形プログラムまたはエラーメッセー
ジを受信する。しかる後、クライアントホストのCPU
で、シミュレーションが実行される。二人のユーザが同
時にシミュレータを使用する場合、ユーザAは図21の
クライアントホスト20を使用し、ユーザBは、クライ
アントホスト30を使用すれば、系の構成情報の実行形
プログラムへの変換はサーバホスト10のCPUによっ
て行われ、シミュレーションの実行は、クライアントホ
スト20のCPUとクライアントホスト30のCPUを
それぞれ用いて行われることになる。コンパイルに要す
る計算時間は短く、シミュレーション実行に要する計算
時間は長大であるため、一つのCPUを二人でTSS等
により同時に使う方法に比べ、結果入手までの時間を短
縮することができる。また、シミュレータのアルゴリズ
ムは、サーバホスト中のコンパイラのみに内在されてい
るため、各計算機にシミュレーションプログラムを格納
してシミュレーションを行う場合と異なり、計算機によ
ってシミュレータの機能が異なるという問題が生じな
い。なお、クライアントホストでのシミュレーションの
実行は、クライアントプログラムを終了した後でもよ
い。
【0054】本発明では、回路の定常状態解析を例に説
明を行うが、解析対象系の構成情報に基づいて系の挙動
を解析するシミュレーションであれば本発明を適用する
ことができる。例えば、回路の過渡解析、回路の周波数
応答解析を行う場合には、回路ブロックの構成情報をサ
ーバホストに送信してサーバホストが実行形プログラム
への変換を行いクライアントホストに返送し、クライア
ントホストのCPUでシミュレーションを実行すればよ
い。また、論理回路、伝達関数、アナログ回路、ディジ
タル回路、の少なくとも一つまたはこれらの組み合せか
らなる系の解析を行う場合には、系の構成情報をサーバ
ホストに送信してサーバホストが実行形プログラムへの
変換を行いクライアントホストに返送し、クライアント
ホストのCPUでシミュレーションを実行すればよい。
また、力学的構造物の解析、熱力学系、流体力学系の解
析を行う場合には、それぞれの系の構成情報をサーバホ
ストに送信してサーバホストが実行形プログラムへの変
換を行いクライアントホストに返送し、クライアントホ
ストのCPUでシミュレーションを実行すればよい。ま
た、知識表現言語で記述記述された情報を元に推論を行
うエキスパートシステムの場合には、知識表現言語で記
述記述された情報をサーバホストに送信してサーバホス
トが実行形プログラムへの変換を行いクライアントホス
トに返送し、クライアントホストのCPUでエキスパー
トシステムを実行すればよい。また、コンパイラとして
高級言語のコンパイラを用い、クライアントで作成する
データが、高級言語を用いたプログラムであってもよ
い。いずれにおいても、シミュレーションの実行を複数
の計算機に分散させることができ、且つコンパイラは一
台の計算機のみに格納されている。したがって、コンパ
イラのバージョンアップ等の保守は1ヵ所のみで行えば
よい。かつ、コンパイラにより得られた実行形プログラ
ムの実行は各クライアントにおいて行えるので、シミュ
レーションの効率が向上する。
明を行うが、解析対象系の構成情報に基づいて系の挙動
を解析するシミュレーションであれば本発明を適用する
ことができる。例えば、回路の過渡解析、回路の周波数
応答解析を行う場合には、回路ブロックの構成情報をサ
ーバホストに送信してサーバホストが実行形プログラム
への変換を行いクライアントホストに返送し、クライア
ントホストのCPUでシミュレーションを実行すればよ
い。また、論理回路、伝達関数、アナログ回路、ディジ
タル回路、の少なくとも一つまたはこれらの組み合せか
らなる系の解析を行う場合には、系の構成情報をサーバ
ホストに送信してサーバホストが実行形プログラムへの
変換を行いクライアントホストに返送し、クライアント
ホストのCPUでシミュレーションを実行すればよい。
また、力学的構造物の解析、熱力学系、流体力学系の解
析を行う場合には、それぞれの系の構成情報をサーバホ
ストに送信してサーバホストが実行形プログラムへの変
換を行いクライアントホストに返送し、クライアントホ
ストのCPUでシミュレーションを実行すればよい。ま
た、知識表現言語で記述記述された情報を元に推論を行
うエキスパートシステムの場合には、知識表現言語で記
述記述された情報をサーバホストに送信してサーバホス
トが実行形プログラムへの変換を行いクライアントホス
トに返送し、クライアントホストのCPUでエキスパー
トシステムを実行すればよい。また、コンパイラとして
高級言語のコンパイラを用い、クライアントで作成する
データが、高級言語を用いたプログラムであってもよ
い。いずれにおいても、シミュレーションの実行を複数
の計算機に分散させることができ、且つコンパイラは一
台の計算機のみに格納されている。したがって、コンパ
イラのバージョンアップ等の保守は1ヵ所のみで行えば
よい。かつ、コンパイラにより得られた実行形プログラ
ムの実行は各クライアントにおいて行えるので、シミュ
レーションの効率が向上する。
【0055】図23に解析対象例を示す。図23の50
00は、解析対象となる回路であり、5100は、回路
5000を表す回路の構成情報であり、この情報がクラ
イアントホストからサーバホストに転送される。510
1は、1.0ミリアンペアの電流源が節点02とアース
の間にあることを示し、5102は、100キロΩの抵
抗が節点02と01の間にあることを示し、5103
は、200キロΩの抵抗が節点01とアースの間にある
ことを示す。
00は、解析対象となる回路であり、5100は、回路
5000を表す回路の構成情報であり、この情報がクラ
イアントホストからサーバホストに転送される。510
1は、1.0ミリアンペアの電流源が節点02とアース
の間にあることを示し、5102は、100キロΩの抵
抗が節点02と01の間にあることを示し、5103
は、200キロΩの抵抗が節点01とアースの間にある
ことを示す。
【0056】図24は、図20の解析対象構成情報送信
処理3200の具体的実現例を示す。まず、解析対象構
成情報を記述したファイルの名称を読み込む(ステップ
3201)。ファイル名称で指示されるファイルの大き
さ(バイト)を調べて変数Sに格納し、ファイルの大き
さをサーバホストに送信する(ステップ3203)。フ
ァイルをMバイトずつ読み込んで変数Dに格納し(ステ
ップ3209)、変数LにMの値を代入して(ステップ
3210)、DとLをサーバホストに転送する(ステッ
プ3211)。ファイルの残りのファイルバイトサイズ
がM以下になれば、残りのデータを全て読み込んで変数
Dに格納し(ステップ3206)、格納したバイト数を
Lに格納して(ステップ3207)、DとLをサーバホ
ストに転送する(ステップ3208)。
処理3200の具体的実現例を示す。まず、解析対象構
成情報を記述したファイルの名称を読み込む(ステップ
3201)。ファイル名称で指示されるファイルの大き
さ(バイト)を調べて変数Sに格納し、ファイルの大き
さをサーバホストに送信する(ステップ3203)。フ
ァイルをMバイトずつ読み込んで変数Dに格納し(ステ
ップ3209)、変数LにMの値を代入して(ステップ
3210)、DとLをサーバホストに転送する(ステッ
プ3211)。ファイルの残りのファイルバイトサイズ
がM以下になれば、残りのデータを全て読み込んで変数
Dに格納し(ステップ3206)、格納したバイト数を
Lに格納して(ステップ3207)、DとLをサーバホ
ストに転送する(ステップ3208)。
【0057】図24のファイル送信と並行して、図25
のファイル受信がサーバプログラムによって実行され
る。まず、転送されるファイルの大きさをクライアント
ホストより受信し、これを変数Sに格納する(ステップ
4301)。クライアントホストより変数DとLの値を
受信し(ステップ4303)、サーバプログラムで使用
する変数DとLに格納する(ステップ4304)。変数
DとLのサイズは、サーバプログラムとクライアントプ
ログラムで同一にしておく。受信したデータのサイズが
Sになる(ステップ4305の結果、Sが0になる)ま
でこれを繰り返す(ステップ4305,4302)。こ
のようにして、図23のファイル3100は、クライア
ントホストからサーバホストに転送され、サーバホスト
の記憶装置中に格納される。
のファイル受信がサーバプログラムによって実行され
る。まず、転送されるファイルの大きさをクライアント
ホストより受信し、これを変数Sに格納する(ステップ
4301)。クライアントホストより変数DとLの値を
受信し(ステップ4303)、サーバプログラムで使用
する変数DとLに格納する(ステップ4304)。変数
DとLのサイズは、サーバプログラムとクライアントプ
ログラムで同一にしておく。受信したデータのサイズが
Sになる(ステップ4305の結果、Sが0になる)ま
でこれを繰り返す(ステップ4305,4302)。こ
のようにして、図23のファイル3100は、クライア
ントホストからサーバホストに転送され、サーバホスト
の記憶装置中に格納される。
【0058】サーバプログラムは、第1の実施例におい
て説明したと同様に、サーバホストの記憶装置中に格納
された系の構成情報に基づいて、系を解析する実行形プ
ログラムを生成する(図20の4400)。
て説明したと同様に、サーバホストの記憶装置中に格納
された系の構成情報に基づいて、系を解析する実行形プ
ログラムを生成する(図20の4400)。
【0059】図23の解析例の場合に生成される実行形
プログラムのアルゴリズムを図26に示す。回路の構成
情報から、節点法により回路の定常状態を解析するアル
ゴリズムを生成した例であるが、このアルゴリズムはク
ライアントホストのCPUで実行させることのできる機
械語を用いて記述される。ステップ5201,5202
では、各変数a11〜a22およびI1,I2に数値が
代入され、ステップ5203ではこれらの数値を用いて
連立方程式が解かれる。ステップ5204では、その結
果V1,V2が出力される。この実行形プログラムを得
るためのコンパイルの際に、サーバホストが部分回路を
ライブラリとして有している場合、これを利用してコン
パイルを行ってもよい。
プログラムのアルゴリズムを図26に示す。回路の構成
情報から、節点法により回路の定常状態を解析するアル
ゴリズムを生成した例であるが、このアルゴリズムはク
ライアントホストのCPUで実行させることのできる機
械語を用いて記述される。ステップ5201,5202
では、各変数a11〜a22およびI1,I2に数値が
代入され、ステップ5203ではこれらの数値を用いて
連立方程式が解かれる。ステップ5204では、その結
果V1,V2が出力される。この実行形プログラムを得
るためのコンパイルの際に、サーバホストが部分回路を
ライブラリとして有している場合、これを利用してコン
パイルを行ってもよい。
【0060】解析対象構成情報に誤りがあり、コンパイ
ルが不成功になる事もあり得る。図20のステップ45
00では、コンパイルが成功したか否かをクライアント
ホストに送信し、ステップ3300でこれを受信する。
コンパイル結果は、図20ステップ4700またはステ
ップ4800によってサーバホストからクライアントホ
ストに転送される。これを転送する方法は、図20の3
200の解析対象系構成情報送信と同様の方法を用いれ
ばよい。これを受信するのが、図20ステップ3400
であるが、これをより詳細に図27を用いて説明する。
ルが不成功になる事もあり得る。図20のステップ45
00では、コンパイルが成功したか否かをクライアント
ホストに送信し、ステップ3300でこれを受信する。
コンパイル結果は、図20ステップ4700またはステ
ップ4800によってサーバホストからクライアントホ
ストに転送される。これを転送する方法は、図20の3
200の解析対象系構成情報送信と同様の方法を用いれ
ばよい。これを受信するのが、図20ステップ3400
であるが、これをより詳細に図27を用いて説明する。
【0061】コンパイル成否結果は、ステップ3301
により受信される。この受信方法は、図20ステップ4
300の解析対象系構成情報受信と同様の方法を用いれ
ばよい。クライアントプログラムは、図20ステップ3
300で受信したコンパイラの成否結果によって次の処
理を行う。すなわち、コンパイルが成功している場合に
は、実行形プログラムを新しいファイルに書き込み(ス
テップ3303)、コンパイルが失敗している場合に
は、エラーメッセージをクライアントホストの画面に書
き出す(ステップ3304)。
により受信される。この受信方法は、図20ステップ4
300の解析対象系構成情報受信と同様の方法を用いれ
ばよい。クライアントプログラムは、図20ステップ3
300で受信したコンパイラの成否結果によって次の処
理を行う。すなわち、コンパイルが成功している場合に
は、実行形プログラムを新しいファイルに書き込み(ス
テップ3303)、コンパイルが失敗している場合に
は、エラーメッセージをクライアントホストの画面に書
き出す(ステップ3304)。
【0062】クライアントホストでは、実行形プログラ
ムを受信した場合にこれを、クライアントホストのCP
Uを用いて実行する(図20ステップ3500)。
ムを受信した場合にこれを、クライアントホストのCP
Uを用いて実行する(図20ステップ3500)。
【0063】以上の方法により、シミュレータアルゴリ
ズムを一台の計算機に置くと同時に、シミュレーション
実行を複数計算機に分散させることができる。
ズムを一台の計算機に置くと同時に、シミュレーション
実行を複数計算機に分散させることができる。
【0064】以上の方法のようにサーバプログラムを一
台の計算機のみに置いた場合、その計算機が故障等で使
用不可能になったときシミュレーションを行えないとい
う問題が生じる。このような問題を避けるため、最小限
の複数の計算機にサーバプログラムを置いてもよい。サ
ーバホストの台数がクライアントホストの台数より少な
ければ、シミュレータの整合性管理とシミュレーション
実行の負荷分散の両立という効果は生じる。複数のサー
バホストを設ける場合には、図20ステップ3100を
図28に示す第5の実施例の方法で実現すればよい。
台の計算機のみに置いた場合、その計算機が故障等で使
用不可能になったときシミュレーションを行えないとい
う問題が生じる。このような問題を避けるため、最小限
の複数の計算機にサーバプログラムを置いてもよい。サ
ーバホストの台数がクライアントホストの台数より少な
ければ、シミュレータの整合性管理とシミュレーション
実行の負荷分散の両立という効果は生じる。複数のサー
バホストを設ける場合には、図20ステップ3100を
図28に示す第5の実施例の方法で実現すればよい。
【0065】図28において、サーバホストをAとB二
つ用意してある場合、まず一方のサーバホストへの接続
を試み(ステップ3101)、これが失敗した場合に
は、別のサーバホストへの接続を試みる(ステップ31
03)。いずれの接続にも失敗した場合には、エラーメ
ッセージを表示する(ステップ3105)。サーバが二
つより多い場合には、この処理を繰り返せばよい。
つ用意してある場合、まず一方のサーバホストへの接続
を試み(ステップ3101)、これが失敗した場合に
は、別のサーバホストへの接続を試みる(ステップ31
03)。いずれの接続にも失敗した場合には、エラーメ
ッセージを表示する(ステップ3105)。サーバが二
つより多い場合には、この処理を繰り返せばよい。
【0066】また、シミュレーションを実行する計算機
とクライアントホストとが異なっていてもよい。例え
ば、クライアントホストのCPU性能より高いCPU性
能をもつ計算機でシミュレーションを実行させることに
よりシミュレーションの効率を向上させることができ
る。
とクライアントホストとが異なっていてもよい。例え
ば、クライアントホストのCPU性能より高いCPU性
能をもつ計算機でシミュレーションを実行させることに
よりシミュレーションの効率を向上させることができ
る。
【0067】図29に、このような、シミュレーション
を実行する計算機がクライアントホストとが異なる場合
のシミュレーション方法を示す。図20と同様のステッ
プには同じ参照番号を付して、説明を省略する。
を実行する計算機がクライアントホストとが異なる場合
のシミュレーション方法を示す。図20と同様のステッ
プには同じ参照番号を付して、説明を省略する。
【0068】クライアントプログラムは、図29のステ
ップ3250によって系の構成情報と共に、クライアン
トホスト名とシミュレーション実行計算機名をサーバホ
ストに送信する。サーバホストは、クライアントより受
信したシミュレーション実行計算機名が指示する計算機
に実行形とクライアントホスト名を送信する(ステップ
4750)。シミュレーション実行計算機は、9000
に示すように、実行形プログラムとクライアント計算機
名を受信し(9100)、受信した実行形プログラムに
よりシミュレーションを実行する(9200)。このシ
ミュレーション結果を、クライアント計算機名が示すク
ライアントホストに送信する(9300)。
ップ3250によって系の構成情報と共に、クライアン
トホスト名とシミュレーション実行計算機名をサーバホ
ストに送信する。サーバホストは、クライアントより受
信したシミュレーション実行計算機名が指示する計算機
に実行形とクライアントホスト名を送信する(ステップ
4750)。シミュレーション実行計算機は、9000
に示すように、実行形プログラムとクライアント計算機
名を受信し(9100)、受信した実行形プログラムに
よりシミュレーションを実行する(9200)。このシ
ミュレーション結果を、クライアント計算機名が示すク
ライアントホストに送信する(9300)。
【0069】図30と図31を用いて本発明の第6の実
施例を説明する。クライアントホストが複数あり、クラ
イアントによって使用しているCPUの機械語命令体系
が異なっている場合には、次のようにして本発明のシミ
ュレーション方法を適用できる。
施例を説明する。クライアントホストが複数あり、クラ
イアントによって使用しているCPUの機械語命令体系
が異なっている場合には、次のようにして本発明のシミ
ュレーション方法を適用できる。
【0070】すなわち、クライアントは、図20のステ
ップ3200で、系の構成情報と共にクライアントホス
トの種別を表す情報をサーバホストに送信する。サーバ
プログラムは、図20のステップ4400として、図3
0の処理を実行する。すなわち、サーバホストは、まず
高級言語で記述されたプログラムを生成する(ステップ
4451)。図23の解析対象の場合のプログラムの例
を図31に示す。この例では、高級言語としてC言語を
用いている。この例で、solverとあるのは、連立
一時方程式を解くためのサブルーチンであるものとす
る。サーバには、C言語プログラムをクライアントの種
類別に別個の機械語へ変換するCコンパイラを複数用意
しておく。図30のステップ4452で使用すべきコン
パイラを選択する。この選択のためには、図32に示す
ようなクライアントタイプ8001と使用コンパイラ8
002の対応テーブル8000をサーバホストに用意し
て置けばよい。このように、クライアントホストより受
け取ったクライアントタイプより使用コンパイラを選択
し、コンパイルを行えば、クライアントのCPUが実行
する機械語の命令体系が異なっていても本発明を実行す
ることができる。
ップ3200で、系の構成情報と共にクライアントホス
トの種別を表す情報をサーバホストに送信する。サーバ
プログラムは、図20のステップ4400として、図3
0の処理を実行する。すなわち、サーバホストは、まず
高級言語で記述されたプログラムを生成する(ステップ
4451)。図23の解析対象の場合のプログラムの例
を図31に示す。この例では、高級言語としてC言語を
用いている。この例で、solverとあるのは、連立
一時方程式を解くためのサブルーチンであるものとす
る。サーバには、C言語プログラムをクライアントの種
類別に別個の機械語へ変換するCコンパイラを複数用意
しておく。図30のステップ4452で使用すべきコン
パイラを選択する。この選択のためには、図32に示す
ようなクライアントタイプ8001と使用コンパイラ8
002の対応テーブル8000をサーバホストに用意し
て置けばよい。このように、クライアントホストより受
け取ったクライアントタイプより使用コンパイラを選択
し、コンパイルを行えば、クライアントのCPUが実行
する機械語の命令体系が異なっていても本発明を実行す
ることができる。
【0071】図33と図34を用いて本発明の第7の実
施例を説明する。シミュレータ利用者が、系の構成情報
を変更しながらシミュレーションを繰り返すことがあ
る。このような場合には、しばしば、変更を取り消すこ
とができるように変更前のデータを保存しておくことが
ある。しかし、利用者がデータの保存をし忘れることが
ある。この問題は次のようにして解決できる。すなわ
ち、コンパイルを行うサーバホストにバックアップ用の
データベースを用意しておき、クライアントホストが転
送した系の構成情報をサーバホスト上に保存しておくも
のである。
施例を説明する。シミュレータ利用者が、系の構成情報
を変更しながらシミュレーションを繰り返すことがあ
る。このような場合には、しばしば、変更を取り消すこ
とができるように変更前のデータを保存しておくことが
ある。しかし、利用者がデータの保存をし忘れることが
ある。この問題は次のようにして解決できる。すなわ
ち、コンパイルを行うサーバホストにバックアップ用の
データベースを用意しておき、クライアントホストが転
送した系の構成情報をサーバホスト上に保存しておくも
のである。
【0072】これを実現するためには、図20のステッ
プ4300を、図33の方法で実現すればよい。すなわ
ち、まず、系の構成情報を受信し(ステップ437
1)、次にファイルを識別する名称を生成し(ステップ
4372)、受信した構成情報をファイルに書き出し
て、ステップ4372で生成した名称をつけてデータベ
ースに保存し(ステップ4373)、データベース管理
情報を修正する(ステップ4374)。データベース管
理情報は、図34に示すテーブル8100であり、クラ
イアントホスト名8101、シミュレータの利用者名8
102、系の構成情報を記述したファイルの名称810
3、受信日時8104、ファイル識別名8105の対応
関係を保存する。図33のステップ4372では、ファ
イルを受信する度に新しいファイル識別名を生成するよ
うにすれば、利用者がコンパイルした全てのファイルを
保存し、必要に応じて取り出すことができる。なお、デ
ータベースは、サーバホスト以外の計算機に置かれてい
てもよい。
プ4300を、図33の方法で実現すればよい。すなわ
ち、まず、系の構成情報を受信し(ステップ437
1)、次にファイルを識別する名称を生成し(ステップ
4372)、受信した構成情報をファイルに書き出し
て、ステップ4372で生成した名称をつけてデータベ
ースに保存し(ステップ4373)、データベース管理
情報を修正する(ステップ4374)。データベース管
理情報は、図34に示すテーブル8100であり、クラ
イアントホスト名8101、シミュレータの利用者名8
102、系の構成情報を記述したファイルの名称810
3、受信日時8104、ファイル識別名8105の対応
関係を保存する。図33のステップ4372では、ファ
イルを受信する度に新しいファイル識別名を生成するよ
うにすれば、利用者がコンパイルした全てのファイルを
保存し、必要に応じて取り出すことができる。なお、デ
ータベースは、サーバホスト以外の計算機に置かれてい
てもよい。
【0073】
【発明の効果】本発明によれば、生成された実行形は、
系の定義情報の読み込みを行わないため、複数の入力条
件に対してそれぞれ出力を計算する場合にそのつど系の
定義情報を読み込む必要がなく、シミュレーションの処
理時間を節約できる。さらに、複数の系に対して、各系
の構成情報を読み込んでそれぞれ実行形プログラムを生
成し、ある実行形プログラムの出力を他の実行形プログ
ラムの入力としながら実行形プログラムを実行すること
により、複数の系が複合してできる系のシミュレーショ
ンを行うことができる。このため、ある実行形をあらか
じめ用意した他の実行形と差し替えることにより、元の
データを変更しなくても解析対象系の修正ができ、試行
錯誤的シミュレーション繰返し作業を容易にできる。
系の定義情報の読み込みを行わないため、複数の入力条
件に対してそれぞれ出力を計算する場合にそのつど系の
定義情報を読み込む必要がなく、シミュレーションの処
理時間を節約できる。さらに、複数の系に対して、各系
の構成情報を読み込んでそれぞれ実行形プログラムを生
成し、ある実行形プログラムの出力を他の実行形プログ
ラムの入力としながら実行形プログラムを実行すること
により、複数の系が複合してできる系のシミュレーショ
ンを行うことができる。このため、ある実行形をあらか
じめ用意した他の実行形と差し替えることにより、元の
データを変更しなくても解析対象系の修正ができ、試行
錯誤的シミュレーション繰返し作業を容易にできる。
【0074】また、ネットワークを利用した場合、シミ
ュレータは、サーバホストのみが持つため、複数のシミ
ュレータの保守が必要となるという上記問題は回避され
る。実際のシミュレーションを実行させるのは、複数の
クライアントホストであるため、一台のクライアントホ
スト当たりが実行するシミュレーションの数を少なくす
ることができ、単一のシミュレータのみを用意してシミ
ュレータの保守作業を容易にするとともに、シミュレー
ションの実行を複数の計算機で分散してシミュレーショ
ンの効率向上を図ることができる。
ュレータは、サーバホストのみが持つため、複数のシミ
ュレータの保守が必要となるという上記問題は回避され
る。実際のシミュレーションを実行させるのは、複数の
クライアントホストであるため、一台のクライアントホ
スト当たりが実行するシミュレーションの数を少なくす
ることができ、単一のシミュレータのみを用意してシミ
ュレータの保守作業を容易にするとともに、シミュレー
ションの実行を複数の計算機で分散してシミュレーショ
ンの効率向上を図ることができる。
【0075】また、シミュレータをサーバホストのみが
持ち、クライアントホストの種別に応じて生成される実
行形プログラムが異なるようにすることにより、単一の
シミュレータのみを用意してシミュレータの保守作業を
容易にするととともに、シミュレーションを実行する計
算機の機械語命令体系が異なる計算機でもこのシミュレ
ータを利用できるようにすることができる。
持ち、クライアントホストの種別に応じて生成される実
行形プログラムが異なるようにすることにより、単一の
シミュレータのみを用意してシミュレータの保守作業を
容易にするととともに、シミュレーションを実行する計
算機の機械語命令体系が異なる計算機でもこのシミュレ
ータを利用できるようにすることができる。
【図1】本発明で用いるシミュレータコンパイラの説明
図
図
【図2】本発明の方法を実施する装置の構成を示すブロ
ック図
ック図
【図3】実施例における解析対象例の説明図
【図4】図3の解析対象例とシミュレータコンパイラの
関係の説明図
関係の説明図
【図5】図4の実行形による実行例の説明図
【図6】従来のシミュレータの実現例の説明図
【図7】従来シミュレータのデータ読み込み部分の実現
方法の説明図
方法の説明図
【図8】実施例において用いる系定義サブルーチン生成
方法の説明図
方法の説明図
【図9】実施例のシミュレータコンパイラの実現方法の
説明図
説明図
【図10】図9のシミュレータコンパイラによるコンパ
イル結果としての実行形の処理のフローチャート
イル結果としての実行形の処理のフローチャート
【図11】境界値問題のシミュレーションに適用した場
合の説明図
合の説明図
【図12】複数の系が接続された系について本発明を適
用する第2の実施例の説明図
用する第2の実施例の説明図
【図13】第2の実施例における複数の系が接続された
系のシミュレーション方法の説明図
系のシミュレーション方法の説明図
【図14】複数の系が接続されたできたより複雑な系の
例の説明図
例の説明図
【図15】図14に対応する実行形の組合せの説明図
【図16】実行形一部差し替えをシミュレーション結果
に基づいて自動的に行うシミュレーション制御のフロー
チャート
に基づいて自動的に行うシミュレーション制御のフロー
チャート
【図17】パラメータを変更する場合に本発明を適用し
た第3の実施例の説明図
た第3の実施例の説明図
【図18】第3の実施例に使用するパラメータを定義す
るファイル記述例の説明図
るファイル記述例の説明図
【図19】図16のシミュレーション制御の具体例を示
すフローチャート
すフローチャート
【図20】本発明の第4の実施例を表す全体フローチャ
ート
ート
【図21】図20の処理を実施する装置全体の説明図
【図22】図21に示した装置の構成を示す説明図
【図23】第4の実施例における解析対象記述例の説明
図
図
【図24】第4の実施例におけるファイルの送信方法を
示すフローチャート
示すフローチャート
【図25】第4の実施例におけるファイルの受信方法説
明図
明図
【図26】第4の実施例における生成される実行形プロ
グラムの例の説明図
グラムの例の説明図
【図27】第4の実施例におけるコンパイル成否結果の
受信方法説明図
受信方法説明図
【図28】第4の実施例におけるサーバへの接続方法の
説明図
説明図
【図29】本発明の第5の実施例における、別計算機に
よるシミュレーション実行方法を示すフローチャート
よるシミュレーション実行方法を示すフローチャート
【図30】第5の実施例によるコンパイル実行方法のフ
ローチャート
ローチャート
【図31】本発明の第6の実施例における高級言語で記
述されたプログラム例の説明図
述されたプログラム例の説明図
【図32】第6の実施例におけるクライアントタイプと
コンパイラの対応テーブル例の説明図
コンパイラの対応テーブル例の説明図
【図33】本発明の第7の実施例データのバックアップ
方法を示すフォローチャート
方法を示すフォローチャート
【図34】第7の実施例におけるバックアップデータベ
ース管理テーブルの例の説明図
ース管理テーブルの例の説明図
Claims (21)
- 【請求項1】解析対象となる系の構成情報を読み込んで
実行形プログラムを生成し、該実行形プログラムの実行
時に系への入力を表す情報を読み込んで、当該系の出力
を求めることを特徴とする系のシミュレーション方法。 - 【請求項2】前記実行形プログラムを生成するシミュレ
ータコンパイラの処理の一部として、前記系の構成情報
を読み込み、該読み込んだ構成情報を所定の記憶領域に
セットするプログラムを生成することを特徴とする請求
項1記載の系のシミュレーション方法。 - 【請求項3】前記構成情報に系の特性を決めるパラメー
タを定義し、該パラメータを含んだ構成情報に基づき前
記実行形プログラムを生成し、実行形プログラムの実行
時に系への入力を表す情報とパラメータ値とを入力ファ
イルから読み込んで系の出力を求めることを特徴とする
請求項1記載の系のシミュレーション方法。 - 【請求項4】前記構成情報中にパラメータを定義すると
ともに該パラメータのデフォルト値を定義しておき、前
記パラメータ値が入力ファイル内に定義されていないと
き、前記構成情報中で定義されたデフォルト値をパラメ
ータ値として用いることを特徴とする請求項3記載の系
のシミュレーション方法。 - 【請求項5】前記系は回路ブロックであり、前記入力を
表わす情報は回路ブロックへの入力波形を表す時系列デ
ータであることを特徴とする請求項1記載の系のシミュ
レーション方法。 - 【請求項6】前記系は回路ブロックであり、前記入力を
表わす情報は回路ブロックへの入力電圧または入力電流
を表すデータであることを特徴とする請求項1記載の系
のシミュレーション方法。 - 【請求項7】前記系は、論理回路、伝達関数、アナログ
回路、デジタル回路、の少なくとも一つまたはこれらの
組合せであることを特徴とする請求項1記載の系のシミ
ュレーション方法。 - 【請求項8】複数の系に対して、各系の構成情報を読み
込んでそれぞれ実行形プログラムを生成し、ある実行形
プログラムの出力を他の実行形プログラムの入力としな
がら複数の実行形プログラムを実行し、複数の系が複合
してできる系のシミュレーションを行うことを特徴とす
る請求項1記載の系のシミュレーション方法。 - 【請求項9】前記複合される系の一つとして複数の実行
形プログラムを用意しておき、該複数の実行形プログラ
ムの一つを含む複合された系のシミュレーションを行
い、該シミュレーション結果に応じて前記複数の実行形
プログラムの前記一つを別の実行形プログラムに差し替
えてシミュレーションを繰り返すことを特徴とする請求
項8記載の系のシミュレーション方法。 - 【請求項10】ある実行形プログラムの出力を他の実行
形プログラムの入力としながら複数の実行形プログラム
を複数の演算装置を用いて並列実行することを特徴とす
る請求項8記載の系のシミュレーション方法。 - 【請求項11】複数の計算機を備えたシステムにおい
て、第1の計算機から前記構成情報を第2の計算機へ送
信し、 該第2の計算機は、前記構成情報を受信し、該構成情報
に基づいて前記実行形プログラムを生成し、該実行形プ
ログラムを前記第1の計算機へ送信し、 前記第1の計算機は、前記実行形プログラムを受信し、
該実行形プログラムを実行することを特徴とする請求項
1記載の系のシミュレーション方法。 - 【請求項12】複数の計算機を備えたシステムにおける
系のシミュレーション方法であって、 前記複数の計算機の1台(以下、サーバという)に、系
のシミュレーション用のコンパイラを設け、 前記複数の計算機のうち前記サーバ以外の計算機(以
下、クライアントという)から、解析対象となる系の構
成情報を前記サーバに送信し、 前記サーバは、前記系の構成情報を受信して、該構成情
報に基づき前記コンパイラにより実行形プログラムを生
成した後、該実行形プログラムを前記構成情報の送信元
であるクライアントへ送信し、 当該クライアントは、前記実行形プログラムを受信し
て、該実行形プログラムを実行することにより、前記構
成情報により表わされる系のシミュレーションを行う、 ことを特徴とする系のシミュレーション方法。 - 【請求項13】前記サーバは、前記実行形プログラムの
生成に失敗したとき、前記実行形プログラムに代えてエ
ラーメッセージを前記クライアントへ送信することを特
徴とする請求項12記載の系のシミュレーション方法。 - 【請求項14】前記クライアントの種別に応じて異なる
実行形プログラムを生成する複数のコンパイラを前記サ
ーバに設け、前記構成情報の送信元のクライアントに応
じて前記複数のコンパイラを使い分けることを特徴とす
る請求項12記載の系のシミュレーション方法。 - 【請求項15】前記サーバを複数備え、前記クライアン
トは、動作可能なサーバを探索し、該動作可能なサーバ
に対して前記系の構成情報を送信することを特徴とする
請求項12記載の系のシミュレーション方法。 - 【請求項16】複数の計算機を備えたシステムにおける
系のシミュレーション方法であって、 前記複数の計算機の第1の計算機(以下、サーバとい
う)に、系のシミュレーション用のコンパイラを設け、 前記複数の計算機のうち第2の計算機(以下、第1のク
ライアントという)から解析対象となる系の構成情報
を、自己のクライアント名および当該系のシミュレーシ
ョンを実行すべき第3の計算機(以下、第2のクライア
ントという)のクライアント名とともに、前記サーバに
送信し、 前記サーバは、前記系の構成情報を受信して、該構成情
報に基づき実行形プログラムを生成した後、該実行形プ
ログラムを、前記第1のクライアント名とともに前記第
2のクライアントへ送信し、 該第2のクライアントは、前記実行形プログラムを受信
して、該実行形プログラムを実行することにより、前記
構成情報により表わされる系のシミュレーションを行っ
た後、該実行結果を前記第1のクライアントへ送信す
る、 ことを特徴とする系のシミュレーション方法。 - 【請求項17】複数の計算機を備え、解析対象となる系
のシミュレーションを行うシミュレーションシステムで
あって、 前記解析対象系の構成情報に基づいて、当該系のシミュ
レーションを実行可能な実行形プログラムを生成する計
算機(サーバ)と、該実行形プログラムを実行する計算
機(クライアント)とが異なることを特徴とするシミュ
レーションシステム。 - 【請求項18】前記サーバの台数より、前記クライアン
トの台数が多いことを特徴とする請求項17記載のシミ
ュレーションシステム。 - 【請求項19】前記サーバは、前記クライアントから受
信した前記系の構成情報に対して一意な識別子を付加
し、該識別子とともに当該系の構成情報を格納するデー
タベースを有することを特徴とする請求項16記載のシ
ミュレーションシステム。 - 【請求項20】複数の計算機を備えたシステムにおける
ソースファイルのコンパイル方法であって、 前記複数の計算機の1台(以下、サーバという)に、ソ
ースファイルのコンパイラを設け、 前記複数の計算機のうち前記サーバ以外の計算機(以
下、クライアントという)から、コンパイルの対象とな
るソースファイルを前記サーバに送信し、 前記サーバは前記ソースファイルを受信して、該ソース
ファイルに基づき前記コンパイラによりコンパイルを行
い、 該コンパイルが成功した場合、該コンパイルにより得ら
れた実行形プログラムを、失敗した場合にはエラーメッ
セージを、前記ソースファイルの送信元であるクライア
ントへ送信し、 当該クライアントは、前記実行形プログラムまたはエラ
ーメッセージを受信する、 ことを特徴とするコンパイル方法。 - 【請求項21】前記ソースファイルは、知識表現言語で
記述されたソースファイルであり、前記コンパイラは該
知識表現言語のコンパイラであることを特徴とする請求
項20記載のコンパイル方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9460593A JPH0683900A (ja) | 1992-07-17 | 1993-04-21 | 系のシミュレーション方法およびシミュレーションシステム |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4-190959 | 1992-07-17 | ||
| JP19095992 | 1992-07-17 | ||
| JP9460593A JPH0683900A (ja) | 1992-07-17 | 1993-04-21 | 系のシミュレーション方法およびシミュレーションシステム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0683900A true JPH0683900A (ja) | 1994-03-25 |
Family
ID=26435883
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9460593A Pending JPH0683900A (ja) | 1992-07-17 | 1993-04-21 | 系のシミュレーション方法およびシミュレーションシステム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0683900A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09112733A (ja) * | 1995-10-19 | 1997-05-02 | Ckd Corp | 電磁弁 |
| JP2005222420A (ja) * | 2004-02-06 | 2005-08-18 | Toyota Motor Corp | 分散処理支援プログラム |
| WO2010097991A1 (ja) * | 2009-02-24 | 2010-09-02 | 株式会社日立製作所 | ノイズ解析設計方法 |
| KR20110032346A (ko) * | 2009-09-22 | 2011-03-30 | 삼성전자주식회사 | 병렬 프로그래밍 조절 장치 및 방법 |
-
1993
- 1993-04-21 JP JP9460593A patent/JPH0683900A/ja active Pending
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09112733A (ja) * | 1995-10-19 | 1997-05-02 | Ckd Corp | 電磁弁 |
| JP2005222420A (ja) * | 2004-02-06 | 2005-08-18 | Toyota Motor Corp | 分散処理支援プログラム |
| WO2010097991A1 (ja) * | 2009-02-24 | 2010-09-02 | 株式会社日立製作所 | ノイズ解析設計方法 |
| JP2010198201A (ja) * | 2009-02-24 | 2010-09-09 | Hitachi Ltd | ノイズ解析設計方法 |
| US8484598B2 (en) | 2009-02-24 | 2013-07-09 | Hitachi, Ltd. | Noise analysis designing method |
| KR20110032346A (ko) * | 2009-09-22 | 2011-03-30 | 삼성전자주식회사 | 병렬 프로그래밍 조절 장치 및 방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6708329B1 (en) | Method and apparatus for producing modules compatible with a target system platform from simulation system modules utilized to model target system behavior | |
| US6385765B1 (en) | Specification and verification for concurrent systems with graphical and textual editors | |
| US6182245B1 (en) | Software test case client/server system and method | |
| US5016204A (en) | Expert system for performing diagnostic and redesign operations incorporating multiple levels of simulation detail | |
| CN101719056B (zh) | 用于实时系统控制的组件模型 | |
| US5390320A (en) | Automatically converting structured analysis tool database outputs into an integrated simulation model via transportable standardized metafile | |
| US7194726B2 (en) | Method for automatically decomposing dynamic system models into submodels | |
| JPH11513512A (ja) | ディジタル信号プロセッサの製造方法 | |
| CN117034821B (zh) | 用于芯片设计前端仿真验证的回归验证方法及介质 | |
| JP4978233B2 (ja) | シミュレータ開発システム及びシミュレータ開発方法 | |
| US8984496B2 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
| US20060026584A1 (en) | Explicit linking of dynamic link libraries | |
| US5623419A (en) | Modeling of multi-disciplinary signals | |
| US7103526B2 (en) | Method and apparatus for adapting a simulation model to expose a signal internal to the model to a client application | |
| Bass et al. | Automating the development of distributed control software | |
| Centomo et al. | Using systemc cyber models in an fmi co-simulation environment: Results and proposed fmi enhancements | |
| US8046202B1 (en) | Generation of intermediate representations based on user specified elements in a graphical model that enable simulation, propagation and code generation | |
| JP2004118842A (ja) | オリジナルモデリング環境外の強化された動的システムシミュレーション能力を提供する方法 | |
| EP0598476B1 (en) | Compilation mechanism for a simulation model | |
| CN114416099A (zh) | 一种基于信息物理系统的模型集成方法及相关组件 | |
| EP4703956A1 (en) | Method to prepare a verification project, a method to conduct a verification project a computer program product, a computer-readable storage medium an integrating system and a machine learning cluster | |
| CN118689194B (zh) | 一种发动机控制器的差异标定方法、装置及电子设备 | |
| EP0706125A1 (en) | Object oriented system and method for generating target language code | |
| JP2000200190A (ja) | ソフトウェア開発支援装置、ソフトウェア開発支援方法およびその方法をコンピュ―タに実行させるプログラムを記録したコンピュ―タ読み取り可能な記録媒体 | |
| CN117195791A (zh) | 电路仿真方法及设备 |