(57)【要約】【課題】粒子の挙動を解析する解析中に解析領域に粒子が供給される場合に、計算負荷が軽減される粒子挙動解析装置及びプログラムを提供する。【解決手段】解析領域内に存在する複数の粒子の各々に、相互作用の計算対象とする第１の属性、相互作用の計算対象としない第２の属性及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない第３の属性のいずれかを付与する付与手段と、複数の粒子の相互作用を計算し、得られた相互作用から複数の粒子の位置を計算する計算手段と、属性が付与された複数の粒子の少なくとも１つの属性を変更する属性変更手段と、属性変更手段により第２の属性から他の属性に属性が変更された粒子を解析領域内に再び配置して供給する供給手段と、を備える。【選択図】図５
2015184923.tif 000002
【特許請求の範囲】
【請求項１】
解析領域内に存在する複数の粒子の各々に、相互作用の計算対象とする第１の属性、相互作用の計算対象としない第２の属性及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない第３の属性のいずれかを付与する付与手段と、
前記複数の粒子の相互作用を計算し、得られた相互作用から前記複数の粒子の位置を計算する計算手段と、
属性が付与された前記複数の粒子の少なくとも１つの属性を変更する属性変更手段と、
前記属性変更手段により第２の属性から他の属性に属性が変更された粒子を前記解析領域内に再び配置して供給する供給手段と、
を備えた粒子挙動解析装置。
【請求項２】
前記属性変更手段は、属性変更前の第２の属性の粒子の属性を第１の属性又は第３の属性に変更する第１の変更手段を有し、
前記供給手段は、前記解析領域内の第１の領域に、前記第１の変更手段によって属性が変更された粒子を供給する、
請求項１に記載の粒子挙動解析装置。
【請求項３】
前記属性変更手段は、前記計算手段により前記解析領域内の第２の領域に位置する属性変更前の粒子の属性を第２の属性に変更する第２の変更手段を更に有する、
請求項２に記載の粒子挙動解析装置。
【請求項４】
前記第３の属性の粒子は、予め定めた方向に予め定めた速度で移動される、
請求項１から請求項３までのいずれか１項に記載の粒子挙動解析装置。
【請求項５】
前記属性変更手段は、予め定めた移動を行った属性変更前の第３の属性の粒子の属性を第１の属性に変更する第３の変更手段を更に有する、
請求項４に記載の粒子挙動解析装置。
【請求項６】
前記属性変更手段は、前記第１の領域に存在する属性変更前の粒子が第１の属性である場合は、当該粒子の属性を他の属性に変更する第４の変更手段を更に備えた、請求項２から請求項５までのいずれか１項に記載の粒子挙動解析装置。
【請求項７】
前記属性が付与された複数の粒子を複数の組に分けて、組毎に複数の計算装置に割り当てる割当手段を更に有し、
前記第１の変更手段は、前記複数の計算装置の各々の計算負荷に応じて、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、
請求項２から請求項６までのいずれか１項に記載の粒子挙動解析装置。
【請求項８】
前記属性変更手段は、第１の属性の粒子数が一番小さい計算装置において、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、
請求項７に記載の粒子挙動解析装置。
【請求項９】
前記属性変更手段は、相互作用力の計算回数の総和が一番小さい計算装置において、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、
請求項７に記載の粒子挙動解析装置。
【請求項１０】
コンピュータを、
解析領域内に存在する複数の粒子の各々に、相互作用の計算対象とする第１の属性、相互作用の計算対象としない第２の属性及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない第３の属性のいずれかを付与する付与手段と、
前記複数の粒子の相互作用を計算し、得られた相互作用から前記複数の粒子の位置を計算する計算手段と、
属性が付与された前記複数の粒子の少なくとも１つの属性を変更する属性変更手段と、
前記属性変更手段により第２の属性から他の属性に属性を変更された粒子を前記解析領域内に再び配置して供給する供給手段と、
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、粒子挙動解析装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ネットワーク接続された複数の計算装置を使用して、粒子に作用する他の物質との間での相互作用力を考慮して、前記粒子の挙動を解析する粒子挙動解析方法であって、前記粒子の種類や前記粒子に作用する作用力の種類に基づいて、処理対象要素を所定の分割法により分割し、分割された各分割部分について、所定の分割法による粒子挙動解析を行なうことを特徴とする粒子挙動解析方法が記載されている。
【０００３】
特許文献２には、空間中に分布する複数の粒子の各粒子における属性情報として位置座標等を含むパラメータ情報と前記粒子の状態が定常状態あるいは変動状態であることを示す状態情報と前記状態情報の変更時期を示す変更情報との初期値を設定したのち、前記の各粒子について、注目する粒子の変更情報に基づきこの注目粒子の状態情報の変更時期であるかどうかを判定し、前記状態情報が変更時期でなくかつ前記状態情報が定常状態である場合は前記注目粒子のパラメータ情報に基づいて新しいパラメータ情報を計算して更新し、前記状態情報が変更時期でなくかつ前記状態情報が変動状態である場合は前記粒子の近傍に分布する粒子を見つけだして近傍粒子とし前記近傍粒子のパラメータ情報と前記注目粒子のパラメータ情報とに基づいて前記注目粒子の新しいパラメータ情報を計算して更新し、前記状態情報が変更時期である場合は前記注目粒子の近傍に分布する粒子を見つけだして近傍粒子とし前記近傍粒子のパラメータ情報と前記注目粒子のパラメータ情報と状態情報と変更情報とに基づいて前記注目粒子の新しいパラメータ情報と状態情報と変更情報とを計算して更新する処理を繰り返すことを特徴とする粒子情報計算方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２６５０９７号公報
【特許文献２】特開平０６−００４６４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、粒子の挙動を解析する解析中に解析領域に粒子が供給される場合に、計算負荷が軽減される粒子挙動解析装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１の発明は、解析領域内に存在する複数の粒子の各々に、相互作用の計算対象とする第１の属性、相互作用の計算対象としない第２の属性及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない第３の属性のいずれかを付与する付与手段と、前記複数の粒子の相互作用を計算し、得られた相互作用から前記複数の粒子の位置を計算する計算手段と、属性が付与された前記複数の粒子の少なくとも１つの属性を変更する属性変更手段と、前記属性変更手段により第２の属性から他の属性に属性が変更された粒子を前記解析領域内に再び配置して供給する供給手段と、を備えた粒子挙動解析装置である。
【０００７】
請求項２の発明は、前記属性変更手段は、属性変更前の第２の属性の粒子の属性を第１の属性又は第３の属性に変更する第１の変更手段を有し、前記供給手段は、前記解析領域内の第１の領域に、前記第１の変更手段によって属性が変更された粒子を供給する、請求項１に記載の粒子挙動解析装置である。請求項３の発明は、前記属性変更手段は、前記計算手段により前記解析領域内の第２の領域に位置する属性変更前の粒子の属性を第２の属性に変更する第２の変更手段を更に有する、請求項２に記載の粒子挙動解析装置である。
【０００８】
請求項４の発明は、前記第３の属性の粒子は、予め定めた方向に予め定めた速度で移動される、請求項１から請求項３までのいずれか１項に記載の粒子挙動解析装置である。
【０００９】
請求項５の発明は、前記属性変更手段は、予め定めた移動を行った属性変更前の第３の属性の粒子の属性を第１の属性に変更する第３の変更手段を更に有する、請求項４に記載の粒子挙動解析装置である。
【００１０】
請求項６の発明は、前記属性変更手段は、前記第１の領域に存在する属性変更前の粒子が第１の属性である場合は、当該粒子の属性を他の属性に変更する第４の変更手段を更に備えた、請求項２から請求項５までのいずれか１項に記載の粒子挙動解析装置である。
【００１１】
請求項７の発明は、前記属性が付与された複数の粒子を複数の組に分けて、組毎に複数の計算装置に割り当てる割当手段を更に有し、前記第１の変更手段は、前記複数の計算装置の各々の計算負荷に応じて、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、請求項２から請求項６までのいずれか１項に記載の粒子挙動解析装置である。請求項８の発明は、前記属性変更手段は、第１の属性の粒子数が一番小さい計算装置において、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、請求項７に記載の粒子挙動解析装置である。請求項９の発明は、前記属性変更手段は、相互作用力の計算回数の総和が一番小さい計算装置において、第２の属性の粒子の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する、請求項７に記載の粒子挙動解析装置である。
【００１２】
詰求項１０の発明は、コンピュータを、解析領域内に存在する複数の粒子の各々に、相互作用の計算対象とする第１の属性、相互作用の計算対象としない第２の属性及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない第３の属性のいずれかを付与する付与手段と、前記複数の粒子の相互作用を計算し、得られた相互作用から前記複数の粒子の位置を計算する計算手段と、属性が付与された前記複数の粒子の少なくとも１つの属性を変更する属性変更手段と、前記属性変更手段により第２の属性から他の属性に属性を変更された粒子を前記解析領域内に再び配置して供給する供給手段と、
して機能させるプログラムである。
【発明の効果】
【００１３】
請求項１、請求項１０の発明によれば、粒子の挙動を解析する解析中に解析領域に粒子が供給される場合に、解析領域に新たな粒子を供給することで解析を行うことに比べて、粒子挙動解析装置の計算負荷が軽減される。
【００１４】
請求項２の発明によれば、粒子の属性の変更により解析領域への粒子の供給が行われる。請求項３の発明によれば、粒子の属性の変更により解析領域からの粒子の削除と解析領域への粒子の供給とが行われる。
【００１５】
請求項４、請求項５、請求項６の発明によれば、解析領域に粒子が供給される際に、異常挙動の発生が回避される。
【００１６】
請求項７、請求項８、請求項９の発明によれば、複数の計算装置で分散処理して粒子挙動解析を行う場合に、各計算装置の計算負荷を考慮して粒子の属性を変更しない場合に比べて、計算装置の一部に計算負荷が集中することを抑制することができる。
【図面の簡単な説明】
【００１７】
【図１】解析中に解析領域に粒子が供給される様子（粒子追加供給）を示す図である。
【図２】（Ａ）〜（Ｄ）は手動操作による粒子供給の手順を示す模式図である。
【図３】粒子情報ファイルのデータ構造の一例を示す図である。
【図４】粒子属性に応じた取り扱いの一例を示す図である。
【図５】本発明の実施の形態に係る「粒子追加供給処理」の概略を模式的に説明する図である。
【図６】（Ａ）は削除領域から実粒子が削除される様子を示す図である。（Ｂ）は供給領域から実粒子が供給される様子を示す図である。
【図７】（Ａ）〜（Ｃ）は実粒子が供給される手順を示す図である。
【図８】本発明の実施の形態に係る「粒子挙動解析装置」の構成の一例を示す概略図である。
【図９】管理ノード及び計算ノードを実現するコンピュータのハードウェア構成の一例を示すブロック図である。
【図１０】管理ノードの機能構成の一例を示すブロック図である。
【図１１】計算ノードの機能構成の一例を示すブロック図である。
【図１２】「粒子挙動解析装置」の全体動作の一例を説明するフローチャートである。
【図１３】計算ノードで実行される「位置情報計算処理」の手順の一例を示すフローチャートである。
【図１４】管理ノードで実行される「粒子追加供給処理」の手順の一例を示すフローチャートである。
【図１５】粒子供給時に発生する異常挙動を説明する模式図である。
【図１６】「粒子追加供給処理」の手順の他の一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。
【００１９】
＜粒子追加供給挙動＞
まず、粒子追加供給挙動について説明する。
個別要素法を用いた粒子挙動解析では、解析領域に存在する個々の粒子の挙動を、コンピュータを用いて再現する。図１は解析中に解析領域に粒子が供給される様子（粒子追加供給）を示す図である。図１では、電子写真方式を用いた画像形成装置において、現像剤の粉体粒子が、現像ロールに供給され（粒子供給）、矢印方向に回転する現像ロールに吸着されて移動され、現像ロールから離脱する。現像ロールから離脱した粉体粒子は、解析領域から削除される（粒子削除）。現像剤の粉体粒子は、キャリア、トナー、外添剤の各粒子を含む。
【００２０】
図１に示す例では、供給→移動→削除という一連の工程の間、粉体粒子の挙動が解析される。このように長時間、継続的に粒子挙動解析を行う場合、解析中に解析領域に粒子を追加供給する必要がある。しかしながら、従来、粒子供給や粒子削除は手動操作により行われており、粒子追加供給下における粒子挙動解析の手法は確立されていなかった。
【００２１】
図２（Ａ）〜（Ｄ）は手動操作による粒子供給の手順を示す模式図である。まず、図２（Ａ）に示すステップ１で、ロール上に粒子を初期配置させ、重力を操作して堆積処理を行う。次に、図２（Ｂ）に示すステップ２で、粒子が堆積されるとロールを回転させて粒子挙動解析を行う。次に、図２（Ｃ）に示すステップ３で、追加する粒子を既存粒子が存在しない位置に配置させ、個別に堆積処理を行う。次に、図２（Ｄ）に示すステップ４で、粒子が堆積されるとロールを回転させて粒子挙動解析を行う。
【００２２】
粒子追加供給の場合は、上記ステップ３と上記ステップ４とを繰り返し行う。この手動操作による粒子追加供給では、解析の中断が必要なこと、供給及び削除のタイミングがノウハウに基づくことに加え、種々の要因により解析が中断する等、粒子挙動解析を安定に行うことが困難である。主たる要因としては、（１）粒子の配置領域と解析領域とが重複すると解析開始時に粒子に不要な作用力が掛かる、（２）供給粒子のデータの追加、既存粒子のデータの退避等でメモリ使用量が一時的に急増する、（３）複数の計算装置で並列計算を行う場合は、各装置に粒子を再配分しなければならない等、が挙げられる。
【００２３】
＜粒子属性に基づく粒子追加供給処理＞
本実施の形態に係る粒子挙動解析では、解析対象となる複数の粒子の各々に「属性」を付与し、各粒子の「属性」を変更することで、解析対象となる粒子の総数を変更せずに粒子供給や粒子削除の状況を再現する「粒子追加供給処理」を実施する。この「粒子追加供給処理」により、手動操作による粒子追加供給で問題となる種々の要因は発生せず、粒子追加供給下における粒子挙動解析が安定に実施される。なお、「粒子追加供給処理」の詳細については後述する。
【００２４】
（粒子情報）
次に、「粒子情報」について説明する。
図３は粒子情報ファイルのデータ構造の一例を示す図である。粒子挙動解析では、解析対象となる複数の粒子の各々について、粒子情報ファイルが作成される。粒子情報ファイルには、粒子を識別するための粒子ＩＤと共に、位置情報（座標ｘ、ｙ、ｚ）、及び物理量（半径、質量、速度、電荷、磁化）が記録される。本実施の形態では、粒子情報ファイルには、更に「粒子属性」が記録される。
【００２５】
ここで、本実施の形態における「粒子属性」とは、粒子挙動解析において相互作用の計算対象となるか否かを表す特性である。相互作用には、静電相互作用、磁気的相互作用、及び機械的相互作用（接触力）の３種類が含まれる。具体的には、解析対象となる複数の粒子の各々には、相互作用の計算対象とする実粒子（第１の属性）、相互作用の計算対象としない自由粒子（第２の属性）、及び相互作用のうち接触力について計算対象とし接触力以外について計算対象としない仮想粒子（第３の属性）のいずれかの属性が付与される。
【００２６】
また、「粒子属性」に応じて粒子の挙動を制限する拘束条件が付加される。拘束条件は、粒子情報ファイルにも反映される。図４は粒子属性に応じた取り扱いの一例を示す図である。実粒子は、粒子の挙動は制限されない。自由粒子は、予め定めた位置に固定されるように粒子の挙動が制限される。仮想粒子は、供給時に配置された位置から予め定めた方向に予め定めた速度で移動（強制変位）するように粒子の挙動が制限される。
【００２７】
（粒子追加供給処理の概略）
次に、「粒子追加供給処理」の概略について説明する。
図５は本実施の形態に係る「粒子追加供給処理」の概略を模式的に説明する図である。図５では、電子写真方式を用いた画像形成装置において、現像剤の粉体粒子が現像ロールに供給される例で説明する。図６（Ａ）は削除領域から実粒子が削除される様子を示す図である。図６（Ｂ）は供給領域から実粒子が供給される様子を示す図である。図７（Ａ）〜（Ｃ）は実粒子が供給される手順を示す図である。
【００２８】
図５に示すように、解析領域内には、解析領域から実粒子を削除するための「削除領域Ａ」と、解析領域に実粒子を供給するための「供給領域Ｂ」とが予め設定されている。また、自由粒子を固定しておく位置Ｃも予め設定されている。位置Ｃは、解析領域の内側に設定されていてもよく、解析領域の外側に設定されていてもよい。
【００２９】
粒子追加供給処理では、図６（Ａ）に示すように、削除領域Ａに侵入した実粒子２０は、自由粒子２２に属性が変更される。自由粒子２２は、位置Ｃに固定されて移動できなくなる。図示した例では、複数の実粒子２０が削除されると、各々、自由粒子２２に属性が変更され、複数の自由粒子２２が位置Ｃにストックされる。
【００３０】
一方、図６（Ｂ）及び図７（Ａ）に示すように、自由粒子２２は、仮想粒子２４に属性が変更されて、仮想粒子２４が供給領域Ｂに配置される。図示した例では、位置Ｃから複数の自由粒子２２が取り出され、各々が仮想粒子２４に属性が変更され、複数の仮想粒子２４が供給領域Ｂに配置される。
【００３１】
図６（Ｂ）及び図７（Ｂ）に示すように、仮想粒子２４は、配置された位置から予め定めた方向（矢印方向）に予め定めた速度で移動される（強制変位）。図示した例では、仮想粒子２４は、配置された位置Ｐ１から、供給領域Ｂの外側の位置Ｐ３まで移動される。そして、図６（Ｂ）及び図７（Ｃ）に示すように、仮想粒子２４は、位置Ｐ３まで移動された後に、実粒子２０に属性が変更される。こうして解析領域に実粒子が供給される。
【００３２】
ここで、図５に戻って説明する。図５には粒子追加供給処理における粒子の移動方向が太い矢印で図示されている。まず、削除領域Ａに侵入した実粒子２０は、自由粒子２２に属性が変更される。自由粒子２２は位置Ｃにストックされる。位置Ｃから自由粒子２２が取り出され、仮想粒子２４に属性が変更されて供給領域Ｂに配置される。仮想粒子２４は移動後に実粒子２０に属性が変更される。このように粒子追加供給処理では、粒子はその属性が、実粒子２０→自由粒子２２→仮想粒子２４→実粒子２０と変更されることで、解析領域から削除され、再び解析領域に供給されるのである。なお、削除と供給とを同時に行う必要はない。供給だけを行ってもよく、削除と供給とを順次行ってもよい。
【００３３】
＜粒子挙動解析装置＞
次に、「粒子挙動解析装置」について説明する。
図８は本実施の形態に係る「粒子挙動解析装置」の構成の一例を示す概略図である。図８に示すように、粒子挙動解析装置１００は、１台の管理ノード１１０と、複数台の計算ノード１２０と、が通信可能に接続された並列計算システムとして構成されている。各ノードは、コンピュータ等の計算装置で実現される。
【００３４】
管理ノード１１０には、ＳＳＤ（Solid State Drive）１３０が外部記憶装置として接続されている。また、計算ノード１２０の各々には、ＳＳＤ１４０が外部記憶装置として接続されている。なお、ＳＳＤは、記憶媒体としてＤＲＡＭ（Dynamic Random Access Memory）やフラッシュメモリ等の半導体メモリを用い、ＨＤＤ（ハードディスクドライブ）等と同様にコンピュータの外部記憶装置として使用される。ＳＳＤは、半導体メモリを記憶媒体とするため、ＨＤＤに比べてデータの読み書きを高速に行える。
【００３５】
図９は管理ノード及び計算ノードを実現するコンピュータのハードウェア構成の一例を示すブロック図である。図９に示すコンピュータ１０は、中央処理装置（ＣＰＵ：Central Processing Unit）１０ａと、主記憶装置（メインメモリ）１０ｂ及び外部記憶装置１０ｃを備える。外部記憶装置１０ｃとしては、上記の通りＳＳＤが用いられる。
【００３６】
また、図９のコンピュータ１０は、ネットワークを介して外部装置に接続するためのネットワークＩ／Ｆ（インターフェイス）１０ｄと、ディスプレイ装置へ表示出力を行うための表示機構１０ｅと、音声出力を行うための音声機構１０ｆとを備える。さらに、キーボードやマウス等の入力デバイス１０ｇを備える。ＣＰＵ１０ａと他の構成要素との間には、図示しないチップセットやブリッジ回路が介在している。各構成要素は、システムバスや入出力バス等の各種のバスを介して接続されている。
【００３７】
なお、図９は、管理ノード１１０および計算ノード１２０を実現するのに好適なコンピュータのハードウェア構成を例示するに過ぎず、図示の構成に限定されないことは言うまでもない。例えば、計算ノード１２０の補助記憶装置として、外部記憶装置１０ｃの他に、フレキシブルディスクや光学ディスクをメディアとするドライブを設けたり、ＵＳＢメモリを設けたりしても良い。
【００３８】
（管理ノードの機能）
図１０は管理ノードの機能構成の一例を示すブロック図である。
図１０に示すように、管理ノード１１０は、解析対象のデータを各計算ノード１２０に割り当てるデータ割り当て部１１１と、「粒子追加供給」を再現するために解析対象のデータを変更する追加供給処理部１１４と、各計算ノード１２０による計算結果と追加供給処理部１１４による処理結果とを受け取って解析対象のデータを更新するデータ更新部１１３と、各計算ノード１２０による計算が完了した後に終了処理を行う終了処理部１１２とを備える。
【００３９】
データ割り当て部１１１、追加供給処理部１１４、データ更新部１１３及び終了処理部１１２は、例えば、図９に示したコンピュータ１０において、主記憶装置１０ｂに読み込まれたプログラムをＣＰＵ１０ａが実行することで実現される機能であり、ソフトウェアとハードウェア資源とが協働して実現される手段である。
【００４０】
データ割り当て部１１１は、ＳＳＤ１３０から解析対象である粒子情報のデータ（初期データ）を読み込み、読み込んだデータを各計算ノード１２０に割り当て、割り当てたデータを各計算ノード１２０に送信する。計算ノード１２０に送られるデータには、粒子の位置や物理量など計算ノード１２０による計算に必要なデータを含む。
【００４１】
データの割り当ては、例えば、粒子分割法、領域分割法、力分割法などの既存の手法を用いて行う。また、データ割り当て部１１１は、各計算ノード１２０に対して、割り当てたデータと共に、このデータに対応する粒子（自ノードに割り当てられた粒子）の挙動に影響を与える他の粒子のデータを送信する。この他の粒子のデータは、各計算ノード１２０が粒子の挙動解析を行う上で必要なデータ（計算に必要なデータ）である。
【００４２】
追加供給処理部１１４は、ＳＳＤ１４０に保持されている粒子情報の最新のデータに基づいて、解析中に解析領域に実粒子が追加供給されるように、解析対象となる粒子の属性を変更する。また、属性を変更した粒子に、属性に応じた位置や物理量を付与する。追加供給処理部１１４は、処理の実行中に作成される作業ファイルをＣＰＵ１０ａの内部メモリや主記憶装置１０ｂに保持するだけでなく、ＳＳＤ１３０にも保持させる。
【００４３】
データ更新部１１３は、各計算ノード１２０から受信した計算結果と追加供給処理部１１４による処理結果とを解析結果としてまとめ、ＳＳＤ１３０に保持されている粒子情報を更新する。ＳＳＤ１３０における粒子情報の更新は、解析結果を追加書き込みすることによって行っても良いし、現在の粒子情報を解析結果で上書きすることによって行ってもよい。計算ノード１２０による粒子の挙動解析のための計算は、通常、複数回の計算ステップによって行われる。従って、データ更新部１１３は、計算ノード１２０から各計算ステップの計算結果を受信する度に粒子情報の更新を行うこととなる。
【００４４】
終了処理部１１２は、各計算ノード１２０による計算ステップが予め設定された回数に到達したならば、解析を終了し、ユーザに解析終了を通知する。また、最終的な解析結果（更新された情報）を出力してもよい。本実施の形態では、データ更新部１１３が、各計算ステップの解析結果をＳＳＤ１３０に書き込む。従って、終了処理部１１２は、最終的に解析結果を出力する場合、ＳＳＤ１３０に保持されている粒子情報のデータをそのまま出力すればよい。
【００４５】
（計算ノードの機能）
図１１は計算ノードの機能構成の一例を示すブロック図である。
図１１に示すように、各計算ノード１２０は、それぞれ、管理ノード１１０から解析対象のデータを受け付ける受け付け部１２４と、計算処理を行う計算部１２２と、計算部１２２による計算結果を管理ノード１１０へ送信する送信部１２５とを備える。
【００４６】
受け付け部１２４および送信部１２５は、例えば、図９に示したコンピュータ１０において、主記憶装置１０ｂに読み込まれたプログラムをＣＰＵ１０ａが実行しネットワークＩ／Ｆ１０ｄを制御することで実現される。また、計算部１２２は、主記憶装置１０ｂに読み込まれたプログラムをＣＰＵ１０ａが実行することで実現される機能である。このように、図１１に示す計算ノード１２０の各機能ブロックは、ソフトウェアとハードウェア資源とが協働して実現される手段である。
【００４７】
受け付け部１２４は、管理ノード１１０から送信された自ノードの計算に必要なデータを受け付ける。ここで、自ノードの計算に必要なデータとは、上述したように管理ノード１１０により自ノードに割り当てられたデータ及びこのデータに対応する粒子（自ノードに割り当てられた粒子）の挙動に影響を与える他の粒子のデータである。
【００４８】
計算部１２２は、受け付け部１２４により受け付けたデータに基づき、自ノードに割り当てられた粒子の挙動を解析する。計算部１２２は、解析のための計算の実行中に作成される作業ファイルをＣＰＵ１０ａの内部メモリや主記憶装置１０ｂに保持するだけでなく、ＳＳＤ１４０にも保持させる。本実施の形態では、後述する通り、粒子属性に応じた計算が行われる。
【００４９】
送信部１２５は、計算部１２２による計算結果を管理ノード１１０へ送信する。上述したように、計算部１２２による粒子の挙動解析のための計算は、通常、複数回の計算ステップによって行われる。したがって、送信部１２５は、計算部１２２による計算が行われるたびに計算結果を管理ノード１１０へ送信することとなる。
【００５０】
＜粒子挙動解析動作＞
次に、上記のように構成された粒子挙動解析装置１００の動作について説明する。
図１２は「粒子挙動解析装置」の全体動作の一例を説明するフローチャートである。図１２に示すように、粒子挙動解析装置１００は、まず管理ノード１１０が計算ノード１２０の数を取得し（ステップ１００）、解析対象である粒子のデータ（粒子情報ファイル）をＳＳＤ１３０から読み込む（ステップ１０２）。解析開始前に、解析対象である各粒子について粒子情報ファイルが予め作成されている。粒子情報ファイルには、粒子ＩＤ、粒子属性、位置情報（座標ｘ、ｙ、ｚ）、及び物理量（半径、質量、速度、電荷、磁化）の初期データが記録されている。
【００５１】
そして、データ割り当て部１１１が、この解析対象の粒子群を各計算ノード１２０に割り当て、割り当てた粒子のデータを各計算ノード１２０に送信する（ステップ１０４）。送信されたデータは、各計算ノード１２０の受け付け部１２４により受け付けられ、計算部１２２に渡される。
【００５２】
ステップ１０６及びステップ１０８の動作は、各計算ノード１２０において個別に実行される動作である。各計算ノード１２０では、計算部１２２が後述する「位置情報計算処理」を実行し、各粒子の位置情報（位置座標）を計算する（ステップ１０６）。計算部１２２の計算が終了すると、送信部１２５が管理ノード１１０に終了通知と共に計算結果を送信する（ステップ１０８）。管理ノード１１０は、各計算ノード１２０から計算結果を受信する。
【００５３】
管理ノード１１０は、全ての計算ノード１２０から計算結果を受信したか否かを判断する（ステップ１１０）。全ての計算ノード１２０から計算結果を受信すると、管理ノード１１０の追加供給処理部１１４は、解析対象である粒子情報の最新のデータをＳＳＤ１４０から読み込み、読み込んだデータに基づいて「粒子追加供給処理」を実行する。「粒子追加供給処理」の中では、解析対象となる粒子の属性を変更し、属性を変更した粒子に属性に応じた位置や物理量を付与する（ステップ１１２）。
【００５４】
データ更新部１１３は、各計算ノード１２０から受信した計算結果と追加供給処理部１１４による処理結果とを当該計算ステップでの解析結果としてまとめ、ＳＳＤ１３０に保持されている粒子情報を更新する（ステップ１１４）。図３に示す例では、粒子属性、位置座標及び物理量の各々が更新される。そして、各計算ノード１２０による次の計算ステップに用いるために、更新したデータを各計算ノード１２０に送信する（ステップ１１６）。
【００５５】
管理ノード１１０は、全ての計算ノード１２０に更新したデータを送信したか否かを判断する（ステップ１１８）。全ての計算ノード１２０に更新したデータが送信されると、データ更新部１１３は、当該計算ステップでの解析結果をＳＳＤ１３０に書き込む（ステップ１２０）。以下、各計算ノード１２０の計算ステップが予め設定された回数に達するまで、ステップ１０６〜ステップ１２０の処理を繰り返す（ステップ１２２）。そして、計算ステップが設定数に到達したならば、終了処理部１１２が、最終的な解析結果を出力して終了処理を行う（ステップ１２４）。
【００５６】
（位置情報計算処理）
次に、各計算ノード１２０の計算部１２２が実行する「位置情報計算処理」について説明する。図１３は計算ノードで実行される「位置情報計算処理」の手順の一例を示すフローチャートである。まず、解析領域内の電界を計算する（ステップ２００）。次に、解析領域内の磁場力を計算する（ステップ２０２）。そして、得られた電界及び磁場力を用いて、粒子間相互作用力を計算する（ステップ２０４）。次に、計算部１２２は、得られた粒子間相互作用力、粒子の位置情報及び物理量に基づいて運動方程式を解き、各粒子の位置情報（位置座標）を算出する（ステップ２０６）。
【００５７】
ここで、粒子間相互作用力とは、各粒子に掛かる、磁気力（磁気的相互作用力）、静電気力（静電相互作用力）、接触力（機械的相互作用力）の総和である。粒子の属性に応じて説明すると、実粒子については磁気力、静電気力及び接触力が計算され、仮想粒子については接触力のみが計算され、自由粒子については磁気力、静電気力及び接触力の何れも計算されない。
【００５８】
また、仮想粒子は運動方程式に基づかず強制変位され、自由粒子はストック位置に固定される。従って、仮想粒子及び自由粒子の位置情報（位置座標）は、「位置情報計算処理」ではなく、後述する「粒子追加供給処理」で付与される。更に、仮想粒子から属性が変更された直後の実粒子の位置情報（位置座標）も、「位置情報計算処理」ではなく、後述する「粒子追加供給処理」で付与される。
【００５９】
データ更新部１１３が、各計算ノード１２０から受信した計算結果に含まれる位置情報及び物理量を、追加供給処理部１１４による処理結果で補正して、当該計算ステップでの解析結果としてまとめるのである。なお、各ステップで個別に計算された磁気力、静電気力、接触力、及びこれらの総和としての粒子間相互作用力は、それぞれ作業ファイルとして出力されＳＳＤ１４０に保持される。
【００６０】
（粒子追加供給処理）
次に、管理ノード１１０の追加供給処理部１１４が実行する「粒子追加供給処理」について説明する。図１４は管理ノードで実行される「粒子追加供給処理」の手順の一例を示すフローチャートである。図５〜図７を参照して説明する。なお、上記では粒子に着目して説明したが、ここでは時系列に実施される処理の手順として説明する。
【００６１】
まず、解析対象である粒子情報の最新のデータをＳＳＤ１４０から読み込む(ステップ３００）。次に、削除領域Ａに在る実粒子２０の属性を自由粒子２２に変更する（ステップ３０２）。また、属性変更後の自由粒子２２にストック位置Ｃの位置座標を付与する。次に、実粒子２０を供給する計算ノード１２０を選択する（ステップ３０４）。
【００６２】
各計算ノード１２０には、複数の粒子が割り当てられている。割り当てられた粒子における、実粒子２０、仮想粒子２４及び自由粒子２２の割合により、各計算ノード１２０の計算負荷は異なる。実粒子２０の割合が高いほど計算すべき相互作用が多いため計算ノード１２０の計算負荷は増加し、自由粒子２２の割合が高いほど計算すべき相互作用が少ないため計算ノード１２０の計算負荷は減少する。従って、実粒子２０の割合が低い計算ノード１２０を選択すると、計算ノード１２０の一部に計算負荷が集中することを抑制することができる。
【００６３】
次に、自由粒子２２の属性を仮想粒子２４に変更して、属性変更後の仮想粒子２４を供給領域Ｂに配置する（ステップ３０６）。また、属性変更後の仮想粒子２４に位置座標を付与する。次に、既に供給領域Ｂの外側まで移動している仮想粒子２４の属性を実粒子２０に変更する（ステップ３０８）。また、配置位置から強制変位したものとして、属性変更後の実粒子２０に位置座標を付与する。次に、供給領域Ｂに配置された仮想粒子２４を、供給領域Ｂの外側に向けて強制変位させる（ステップ３１０）。また、配置位置から強制変位したものとして、移動後の仮想粒子２４に位置座標を付与する。
【００６４】
実粒子２０の粒子数が一番小さい計算ノード１２０において、自由粒子２２の中から属性を変更する粒子を選択して、選択された粒子の属性を変更する。或いは、複数の計算ノード１２０の各々における全ての粒子に対する相互作用力の計算回数の総和が一番小さい計算ノード１２０において、自由粒子２２の中から属性を変更する粒子を選択して、選択された粒子の属性を変更してもよい。
【００６５】
＜粒子供給時の異常挙動＞
次に、粒子供給時の異常挙動について説明する。
図１５は粒子供給時に発生する異常挙動を説明する模式図である。図１５に示すように、自由粒子が属性が変更されて供給領域に配置される場合、配置位置から供給粒子が湧き出すことになる。ここでは供給粒子を実粒子と考える。供給粒子の座標近傍に、供給粒子と相互作用力を有する既存粒子（実粒子）が存在すると、供給粒子と既存粒子との間に強い反発力が発生し、領域Ｄに観られるように粒子間の衝突の連鎖が起きるなど、予期しない異常挙動が発生する。これを粒子供給時の異常挙動という。
【００６６】
上記の実施の形態では、粒子供給時に異常挙動が発生するのを回避するために、図６（Ｂ）に示すように、自由粒子２２の属性を仮想粒子２４に変更して、属性変更後の仮想粒子２４を供給領域Ｂに配置し、供給領域Ｂの外側まで強制変位させた仮想粒子２４の属性を実粒子２０に変更している。仮想粒子２４と実粒子２０との間には接触力のみが作用する。また、仮想粒子２４は強制変位され、衝突の反動で移動することはない。更に、仮想粒子２４が強制変位することで、既存の実粒子２０が供給領域Ｂに侵入するのを妨害している。
【００６７】
しかしながら、供給領域Ｂに侵入する実粒子２０を無くすことは困難である。そこで、仮想粒子２４を供給領域Ｂに配置する前に、供給領域Ｂにある実粒子２０の属性を自由粒子２２に変更すれば、実粒子２０が供給領域Ｂに侵入することは無くなる。図１６は「粒子追加供給処理」の手順の他の一例を示すフローチャートである。具体的には、図１６に示すように、ステップ３０４とステップ３０６の間に、供給領域Ｂにある実粒子２０の属性を自由粒子２２に変更するステップ３０５を追加する。これにより、粒子の衝突は発生しなくなる。
【００６８】
なお、供給領域Ｂにある実粒子２０の属性を仮想粒子２４に変更してもよい。仮想粒子２４同士であれば衝突の反動で両者が移動することはない。また、供給領域Ｂに実粒子２０を配置してもよい。但し、次の計算ステップまでに実粒子２０を供給領域Ｂの外側まで移動する工夫が必要となる。
【００６９】
なお、上記実施の形態で説明した粒子挙動解析装置及びプログラムの構成は一例であり、本発明の主旨を逸脱しない範囲内においてその構成を変更してもよいことは言うまでもない。例えば、例示したフローチャートにおいて、一部のステップを省略してもよく、他のステップを追加してもよい。また、必要に応じて各ステップの順序を入れ替えてもよい。
【００７０】
上記の実施の形態では、現像剤の粉体粒子が現像ロールに供給される例で説明したが、例示の状況下での粒子挙動解析に限定される訳ではない。粒子追加供給下で粒子挙動解析を行う場合であれば、粒子の種類や供給対象に拘らず、本実施の形態の粒子挙動解析装置により粒子挙動解析が行われる。例えば、粒子は、現像剤に含有される粒子（キャリア、トナー、外添剤）に限定される訳ではない。また、供給対象は、現像ロールに限定される訳ではない。
【符号の説明】
【００７１】
１０   コンピュータ
２０   実粒子
２２   自由粒子
２４   仮想粒子
１００ 粒子挙動解析装置
１１０ 管理ノード
１１２ 終了処理部
１１３ データ更新部
１１４ 追加供給処理部
１２０ 計算ノード
１２２ 計算部
１２４ 受け付け部
１２５ 送信部
Ａ     削除領域
Ｂ     供給領域
Ｃ     位置
【図２】
2015184923.tif 000003
【図３】
2015184923.tif 000004
【図４】
2015184923.tif 000005
【図６】
2015184923.tif 000006
【図７】
2015184923.tif 000007
【図１】
2015184923.tif 000008
【図５】
2015184923.tif 000009
【図８】
2015184923.tif 000010
【図９】
2015184923.tif 000011
【図１０】
2015184923.tif 000012
【図１１】
2015184923.tif 000013
【図１２】
2015184923.tif 000014
【図１３】
2015184923.tif 000015
【図１４】
2015184923.tif 000016
【図１５】
2015184923.tif 000017
【図１６】
2015184923.tif 000018