(57)【要約】【課題】本発明の課題は、材料の設計空間における探索処理を高速化することを目的とする。【解決手段】上記課題は、２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、前記作成部によって作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行うことをコンピュータが実行するシミュレーション方法により達成される。【選択図】図９
2019087107.tif 000002
【特許請求の範囲】
【請求項１】
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、
作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行う
ことをコンピュータが実行するシミュレーション方法。
【請求項２】
前記コンピュータは、
対称操作によって得られる２以上の間隔シリーズに対しては、いずれか１つの間隔シリーズを前記第１ツリー構造に含める
ことを特徴とする請求項１記載のシミュレーション方法。
【請求項３】
前記コンピュータは、
前記間隔シリーズを作成するごとに、前記積層結晶構造の積層順に従って階層が深くなる第２ツリー構造に記憶し、
作成した間隔シリーズが、前記第１ツリー構造に存在せず、かつ、前記第２ツリー構造に存在しない場合に、該第１ツリー構造に格納する
ことを特徴とする請求項２記載のシミュレーション方法。
【請求項４】
前記コンピュータは、
前記間隔シリーズを作成するごとに、前記積層結晶構造の積層順に従って階層が深くなるように前記第１ツリー構造に記憶し、
前記第１ツリー構造を深さ優先でノードを辿ることで、前記間隔シリーズを作成し、
取得した前記間隔シリーズが該第１ツリー構造とは異なる第２ツリー構造にない場合、該間隔シリーズに対称操作を行って更に間隔シリーズを生成し、作成した前記間隔シリーズと、生成した間隔シリーズとを該第２ツリー構造に保存し、
取得した前記間隔シリーズが該第１ツリー構造とは異なる第２ツリー構造にある場合、該間隔シリーズを該第１ツリー構造から削除する
ことを特徴とする請求項２記載のシミュレーション方法。
【請求項５】
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、
作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行う
ことをコンピュータに実行させるシミュレーションプログラム。
【請求項６】
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成する作成部と、
前記作成部によって作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行うシミュレーション部と
ことをコンピュータに実行させるシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレーション方法、プログラム、及び装置に関する。
【背景技術】
【０００２】
近年、従来の材料設計・製造プロセスに情報処理技術を加えたマテリアルズ・インフォマティクスが、材料設計・製造等の品質及び効率を改善するために研究開発の分野で取り入れられている。
【０００３】
マテリアルズ・インフォマティクスに関する技術例として、３次元結晶構造を複数の層に分割し、オペレータは各層ごとに原子の配置を入力するのみで、３次元の結晶モデルを作成し表示する技術が知られている。また、層状化合物について各層を力学的単位となる鋼体シートとして粗視化し、隣接層の鋼体シートとの層間相互作用、内部振動に起因する内部作用を決定して、層状化合物の挙動についての計算を行う技術等が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−９７２７８号公報
【特許文献２】特開２０１１−５８９４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
２種類以上の原子の１以上でなる層が積み上げられた結晶構造を対象とした場合、積層材料について全ての構造候補を求めて真の最適性能を見つけるためには、全空間探索が必要となる。全空間探索の処理時間は、膨大であり、例えば、検証に必要とされている２４層の場合では一年以上かかるといった問題がある。
【０００６】
したがって、１つの側面では、設計空間における探索処理を高速化することを目的とする。
【課題を解決するための手段】
【０００７】
一態様によれば、２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、前記作成部によって作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行うことをコンピュータが実行するシミュレーション方法が提供される。
【０００８】
また、上記課題を解決するための手段として、上記方法を行う装置、コンピュータに上記処理を実行させるためのプログラム、及び、そのプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【０００９】
設計空間における探索処理を高速化することができる。
【図面の簡単な説明】
【００１０】
【図１】積層結晶材料の構造例を示す図である。
【図２】２元積層材料を設計するための全設計空間を説明するための図である。
【図３】２元積層材料の対称操作を説明するための図である。
【図４】２元積層材料の対称空間の例を示す図である。
【図５】重複する間隔シリーズを示す図である。
【図６】重複する間隔シリーズが存在しない構造空間の例を示す図である。
【図７】シミュレーション装置のハードウェア構成を示す図である。
【図８】シミュレーション装置の機能構成例を示す図である。
【図９】空間作成処理の第１の例を説明するためのフローチャート図である。
【図１０】空間作成処理の第２の例における対称空間作成処理を説明するためのフローチャート図である。
【図１１】空間作成処理の第２の例における重複除去処理を説明するためのフローチャート図である。
【図１２】本実施例によって得られた間隔シリーズと、候補構造との関係を示す図である。
【図１３】シミュレーションを行う候補数の比較を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態を図面に基づいて説明する。先ず、積層結晶構造について説明する。図１は、積層結晶材料の構造例を示す図である。図１（Ａ）に示す積層結晶構造９０ａは、ある軸に対して、各層は２種類の原子のいずれかによる層であり積層された２元積層結晶構造の一例である。
【００１２】
この例では、積層結晶構造９０ａは、ケイ素ＳｉとゲルマニウムＧｅの２原子により結晶構造が形成され、各層は、２原子のいずれかの原子により形成されている。例えば、第１層はＳｉの層であり、第１層に積層される第２層はＧｅの層である。第３層もまたＧｅの層であり、第３層はＳｉの層である。更に、Ｓｉ又はＧｅの層が積層される。
【００１３】
図１（Ａ）に示すような、２原子のうちいずれか１つの原子により各層が形成される積層結晶構造９０ａは、２元積層結晶構造という。２元積層結晶構造を有する材料を、２元積層材料という。原子数は、３以上であってもよい。３原子のうちいずれか１つの原子により各層が形成される場合、３元積層結晶構造といい、そのような３元積層結晶構造を有する材料を、３元積層材料という。
【００１４】
図１（Ｂ）では、他の構造例として、混晶結晶構造９０ｂが例示されている。混晶結晶構造９０ｂは、決まった座標（層）に、ＳｉとＧｅの２種類の原子が混在し、それ以外の各層では２原子のいずれかの原子により形成される結晶構造の一例である。例えば、第１層、第２層、第５層、第７層等はＳｉの層であり、第３層、第４層等はＳｉとＧｅが混在する層であり、第８層等はＧｅの層である。同じ２種類の原子による構造であっても、層の構成は、混晶結晶構造９０ｂの方が、積層結晶構造９０ａより複雑となる。
【００１５】
３原子による混晶結晶構造の場合、混在する層は、３原子のうちの２原子の組合せによる層となり、より複雑化する。
【００１６】
所望の特性が最適となりえる結晶構造の候補を探索するシミュレーションでは、探索対象規模の積層材料の全ての構造候補を含む空間が設計空間となる。真の最適性能を見つけるためには、設計空間全体を探索対象としている。設計空間全体を探索することを「全空間探索」という場合がある。
【００１７】
全空間探索はシミュレーションにより実現され、材料設計の構造探索や検証に役立っている。また、近年注目されているMetadynamics（ＭＴＤ）法では、この全空間探索を行う傾向にある。シミュレーション技術と計算機の進歩により、低コストでも可能になっているが、膨大な処理時間は改善されてない。
【００１８】
全空間探索のシミュレーションに係る時間について、簡単に説明する。説明の便宜上、２元積層結晶構造で説明する。図２は、２元積層材料を設計するための全設計空間を説明するための図である。
【００１９】
積層材料は、ある軸に対して原子が層ごとに積み上げられる結晶構造である。従って、各層に特定の原子が在るか否かによって、バイナリ空間（２元系空間）を考えることができる。
【００２０】
例えば、ＳｉとＧｅの積層材料では、層ごとにＳｉ（又はＧｅ）が在るか否かを示すことで、バイナリ空間を作成できる。ここで、バイナリ空間の大きさは、２のべき乗の層数で表される。
【００２１】
図２の例では、特定の原子をＳｉとし、Ｓｉが存在する場合を１、Ｓｉが存在しない場合を０で表している。具体的には、第１層は１で表され、第２層は０で表され、第３層も０で表され、第４層は１で表される。
【００２２】
一層に２種類以上の原子が存在する混晶空間と比較すると、
バイナリ空間のサイズ  ＜  混晶空間のサイズ
と表される。しかしながら、所望の特性が最適となりえる結晶構造の候補を得るためには、概ね２４層の結晶構造でシミュレーションすることが望ましいとされ、バイナリ空間であっても、２の２４乗の層数（即ち、16,777,216層）となる。全空間探索には膨大な時間が掛かり、２４層の場合、候補が１６００万を超えることから、概ね一年以上掛かると考えられている。
【００２３】
本実施例では、設計空間における探索処理を高速化するシミュレーション方法、プログラム、及び装置を提供する。発明者等は、結晶材料構造が周期性を有する場合、対称操作によって得られる構造同士は、同一の材料性質を持つ、とした科学的理論に着目し、互いに対照的な構造が重複して存在しない空間を作成することで、全空間探索の処理時間を短縮可能とした。
【００２４】
対称的な構造とは、単位構造Ａに対して対称操作を行うと構造が一致する単位構造Ｂが存在する場合、単位構造Ａと単位構造Ｂとは互いに対照的な構造であるという。本実施例では、このような、対称操作によって得られる全ての単位構造を含む空間を「対称空間」といい、対称操作に対して重複がない構造で構成された空間、即ち、互いに対照的な単位構造が存在しない空間を「構造空間」という。次に、２元積層材料の対称操作について説明する。
【００２５】
図３は、２元積層材料の対称操作を説明するための図である。図３では、層の数を９とし、「有」は特定の原子が存在することを表し、「無」は特定の原子が存在しないことを表す。この例では、第１層、第４層、第５層、及び第９層に特定の原子が存在することを示している。
【００２６】
この例に示す構造は、
【００２７】
【数１】
2019087107.tif 000003
による間隔シリーズ（ｉ１、ｉ２、・・・、ｉｋ）によって表される。数１において、Ｐｋは特定の原子の層の番号を示し、Ｋは特定の原子が存在する層の数を示し、Ｌｔは積層材料の層の総数（総層数）を示す。
【００２８】
この例の構造において、特定の原子が存在するそれぞれの層の番号は、
Ｐ１＝１、Ｐ２＝４、Ｐ３＝５、Ｐ４＝９
であり、特定の原子が存在する層の合計は４層である。よって、
Ｋ＝４
となる。また、積層材料の総層数は、
ＰＴ＝９
である。
【００２９】
間隔シリーズは、第１層から順に、特定の原子が存在する層から次に特定の原子が存在する層までの層の数で示され、特定の原子が存在する最後の層では、特定の原子が存在する層のうち最も番号が小さい層までの層の数を示す。
【００３０】
図３の例で具体的に説明する。ｉ１は第１層から第４層までの層の数を示すため、数１の上段より、４−１を計算し３を得る。ｉ２は第４層から第５層までの層の数を示すため、数１の上段より、５−４を計算し１を得る。ｉ３は第５層から第９層までの層の数を示すため、数１の上段より、９−５を計算し４を得る。ｉ４は第９層から第１層までの層の数を示すため、数１の下段より、（９＋１）−９を計算し１を得る。従って、この例の間隔シリーズは、
（３、１、４、１）
となる。特定の原子の有無から得られた間隔シリーズを「基準間隔シリーズ」とする。基準間隔シリーズに対して対称操作が行われる。対称操作には、並進操作と、反転操作とがある。
【００３１】
並進操作とは、値を右にシフトさせ、最後の数値を第１の値に配置させる。上記の基準間隔シリーズは、並進操作により以下の３つの間隔シリーズを得る。
（３、１、４、１）
＝＞（１、３、１、４）、（４、１、３、１）、（１、４、１、３）
反転操作とは、左右を入れ替える操作である。上記の基準間隔シリーズは、反転操作により以下の間隔シリーズを得る。
（１、４、１、３）
よって、基準間隔シリーズと上述した４つの間隔シリーズは、科学的理論により同一の材料性質を持つため、構造空間を作成する際には、合計５つの間隔シリーズのいずれか１つを残し、他４つの間隔シリーズは重複する間隔シリーズであると判断し、構造空間には含めない。
【００３２】
このような対称性を考慮した２元積層結晶構造を、ツリー構造で生成し保存する。
【００３３】
間隔シリーズには、 
【００３４】
【数２】
2019087107.tif 000004
で示されるように、各値を合計すると総層数となる。
【００３５】
図４は、２元積層材料の対称空間の例を示す図である。図４では、４層の場合の対称空間３を例示し、全パターンの間隔シリーズをツリー構造で示している。ルート以外の各ノードは間隔を示している。ルートから順にノードを辿ることで間隔シリーズが表される。ここで、ノード「０」は、特定の原子がどの層にも全く存在しないことを示している。
【００３６】
４つのノード「１」により間隔シリーズ（１、１、１、１）を表し、全ての層に特定の原子が存在することを示す。ノード「１」、「１」、及び「２」により間隔シリーズ（１、１、２）を表す。ノード「１」、「２」、及び「１」により間隔シリーズ（１、２、１）を表す。ノード「１」及び「３」により間隔シリーズ（１、３）を表す。
【００３７】
ノード「２」、「１」、及び「１」により間隔シリーズ（２、１、１）を表す。ノード「２」及び「２」により間隔シリーズ（２、２）を表す。ノード「３」及び「１」により間隔シリーズ（３、１）を表す。そして、ノード「４」により、いずれかの１つの層に特定の原子が存在することを示し、間隔シリーズ（４）を表す。
【００３８】
上述したように、対称空間においてツリー構造で示された間隔シリーズの中には、並進操作及び反転操作により重複する間隔シリーズが存在する。図５は、重複する間隔シリーズを示す図である。図５では、図４の対称空間３の場合の重複する間隔シリーズ同士を示している。
【００３９】
ノード「１」、「１」、及び「２」による間隔シリーズ（１、１、２）と、ノード「１」、「２」、及び「１」による間隔シリーズ（１、２、１）と、ノード「２」、「１」、及び「１」による間隔シリーズ（２、１、１）とが重複している。いずれか１つを残し、他を削除する。ここでは、ノード「２」、「１」、及び「１」による間隔シリーズ（２、１、１）を残し、他を削除する。
【００４０】
また、ノード「１」及び「３」による間隔シリーズ（１、３）と、ノード「３」及び「１」による間隔シリーズ（３、１）とが重複している。いずれか１つを残し、他を削除する。ここでは、ノード「３」及び「１」による間隔シリーズ（３、１）を残し、他を削除する。
【００４１】
このような重複を除外する処理により、図６に示すような構造空間４を得ることができる。図６は、重複する間隔シリーズが存在しない構造空間の例を示す図である。前述したバイナリ空間では１６構造が処理対象となり、ツリー構造による対称空間３では９構造が処理対称となるのに対し、図６の構造空間４を用いた場合、６構造のみがシミュレーションの処理対象となる。図６に示すような構造空間４を取得してシミュレーションを行うシミュレーション装置は、図７に示すようなハードウェア構成を有する。
【００４２】
図７は、シミュレーション装置のハードウェア構成を示す図である。図７において、シミュレーション装置１００は、コンピュータによって制御される情報処理装置であって、ＣＰＵ（Central Processing Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ装置１８とを有し、バスＢに接続される。
【００４３】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従ってシミュレーション装置１００を制御するプロセッサに相当する。主記憶装置１２には、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を記憶又は一時保存する。
【００４４】
補助記憶装置１３には、ＨＤＤ（Hard  Disk  Drive）等が用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。
【００４５】
入力装置１４は、マウス、キーボード等を有し、設計者等のユーザがシミュレーション装置１００による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。入力装置１４と表示装置１５とは、一体化したタッチパネル等によるユーザインタフェースであってもよい。通信Ｉ／Ｆ１７は、有線又は無線などのネットワークを通じて通信を行う。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。
【００４６】
シミュレーション装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によってシミュレーション装置１００に提供される。
【００４７】
ドライブ装置１８は、ドライブ装置１８にセットされた記憶媒体１９（例えば、ＣＤ−ＲＯＭ等）とシミュレーション装置１００とのインターフェースを行う。
【００４８】
また、記憶媒体１９に、後述される本実施の形態に係る種々の処理を実現するプログラムを格納し、この記憶媒体１９に格納されたプログラムは、ドライブ装置１８を介してシミュレーション装置１００にインストールされる。インストールされたプログラムは、シミュレーション装置１００により実行可能となる。
【００４９】
尚、プログラムを格納する記憶媒体１９はＣＤ−ＲＯＭに限定されず、コンピュータが読み取り可能な、構造（structure）を有する１つ以上の非一時的（non-transitory）な、有形（tangible）な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤ（Digital Versatile Disk）ディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００５０】
図８は、シミュレーション装置の機能構成例を示す図である。図８において、シミュレーション装置１００は、空間作成部４０と、シミュレーション部４２とを有する。空間作成部４０と、シミュレーション部４２とは、シミュレーション装置１００にインストールされたプログラムが、シミュレーション装置のＣＰＵ１１に実行させる処理により実現される。記憶部１３０は、設定情報５１、対称構造ＤＢ５３、間隔構造データ５４等を記憶する。
【００５１】
空間作成部４０は、図６に示す構造空間４を作成する処理部である。空間作成部４０は、記憶部１３０に記憶される設定情報５１の総層数を用いて、構造空間４を表す間隔構造データ５４を生成して記憶部１３０に記憶する。空間作成部４０は、上述した間隔シリーズを作成するごとに、対称構造ＤＢ５３に記憶しておくことで、対称構造ＤＢ５３に存在するいずれの間隔シリーズとも対称性が一致しない場合に、作成した間隔シリーズを間隔構造データ５４に追加する。
【００５２】
設定情報５１は、ユーザにより予め設定された情報であり、主に、総層数、原子種別等を示す。対称構造ＤＢ５３は、既に作成した間隔シリーズを全て記録したデータベースである。間隔構造データ５４は、対称性を同一とする構造による重複の無いように作成された、複数の間隔シリーズを蓄積するデータテーブル等である。
【００５３】
シミュレーション部４２は、間隔構造データ５４と、設定情報５１の原子種別とを用いて、候補構造を生成し、生成した候補構造に対して、真の最適性能を見つけるためのシミュレーションを行う。得られたシミュレーション結果５７が記憶部１３０に出力され記憶される。
【００５４】
次に、空間作成部４０による空間作成処理について説明する。図９は、空間作成処理の第１の例を説明するためのフローチャート図である。図９に示す空間作成処理の第１の例では、空間作成部４０は、間隔シリーズを作成するごとに、既に作成済みの間隔シリーズとの対称性の判定を行い、対称性が同一の間隔シリーズが未だ作成されていない場合に、作成した間隔シリーズを有効とし、間隔構造データ５４に追加する。
【００５５】
空間作成部４０は、現在の層番号ｋと残り層数ｎとを設定する（ステップＳ１０１）。空間作成処理の初期の実行時には、現在の層番号ｋにはゼロが設定され、残り層数ｎには設定情報５１の総層数が設定されて、空間作成処理が行われる。
【００５６】
空間作成部４０は、残り層数ｎが０か否かを判断する（ステップＳ１０２）。このステップＳ１０２での処理は、ツリー構造の対称空間３の末端ノードに達したか否かを判断する判定処理である。残り層数ｎが０でない場合（ステップＳ１０２のＮｏ）、空間作成部４０は、変数ｉ（ｉは整数）に残り層数ｎを設定し（ステップＳ１０３）、変数ｉが１以上であるか否かを判断する（ステップＳ１０４）。下の層へ進むか、上の層へと戻るかの処理の方向が判断される。
【００５７】
変数ｉが１未満である場合（ステップＳ１０４のＹｅｓ）、空間作成部４０は、再帰的に自身（空間作成処理（gen_symspace(++k, n-i)））を呼び出す（ステップＳ１０５）。その際に、現在の層番号ｋに１を加えて、ｋ番目の層での残り層数ｎから変数ｉを減算する。これにより、次に特定の原子が出現する層までの間隔（層の数（Ｐｋ＋１−Ｐｋ））が指定され、間隔シリーズにＰｋに間隔を示す層の数が設定される。空間作成部４０は、呼出しに応じて、ステップＳ１０１から処理を繰り返す。
【００５８】
再帰的に空間作成処理が行われることで、変数ｉが０又は負を示す場合がある。この場合、空間作成部４０は、現在の空間作成処理においてＰｋを設定せずに現在の空間作成処理を終了する（リターンする）。即ち、変数ｉが１未満となったとき（ステップＳ１０４のＮｏ）、空間作成部４０は、空間作成処理からリターンする。リターンにより、残り層数ｎと変数ｉとは、リターン後の空間作成処理におけるｎとｉの値に戻る。
【００５９】
リターン後の空間作成処理において、空間作成部４０は、ｋから１減算して、１つ上の層番号ｋ−１を得る（ステップＳ１０６）。また、空間作成部４０は、変数ｉから１減算して（ステップＳ１０７）、ステップＳ１０４へと戻り、ｋ−１番目のノードから下の層へ進むか、上の層へと戻るかを判断する。リターン後の空間作成処理において、変数ｉが１以上の場合、空間作成部４０は、１つ上の層ｋ−１において分岐させるため、自身（空間作成処理（gen_symspace(++k, n-i)））を呼び出す（ステップＳ１０５）。その後、上述したように空間作成処理が再帰的に行われることで、分岐後のＰｋが得られる。
【００６０】
ここで、各分岐において末端に到達した場合の処理について説明する。末端に到達すると、空間作成部４０は、作成した間隔シリーズの重複をチェックして、重複しない新たな間隔シリーズの場合に、間隔構造データ５４に格納する処理を行う。
【００６１】
即ち、残り層数ｎが０の場合（ステップＳ１０２のＹｅｓ）、空間作成部４０は、作成した間隔シリーズを基準間隔シリーズとし（ステップＳ１０８）、対称構造ＤＢ５３に存在するか否かを判断する（ステップＳ１０９）。対称構造ＤＢ５３に基準間隔シリーズがある場合（ステップＳ１０９のＹｅｓ）、空間作成部４０は、間隔構造データ５４に追加せずに、現在の空間作成処理からリターンする。
【００６２】
一方、対称構造ＤＢ５３に基準間隔シリーズがない場合（ステップＳ１０９のＮｏ）、空間作成部４０は、基準間隔シリーズに対称操作を行い、対称操作を行って得た対称性が同じ全ての間隔シリーズと、基準間隔シリーズとを対称構造ＤＢ５３に追加する（ステップＳ１１０）。
【００６３】
また、空間作成部４０は、基準間隔シリーズを間隔構造データ５４に記録し（ステップＳ１１１）、現在の空間作成処理からリターンする。リターンにより、空間作成処理が存在しなくなると、空間作成部４０による空間作成処理は終了となる。即ち、間隔構造データ５４の作成が完了し、シミュレーション部４２による利用が可能となる。
【００６４】
空間作成処理の第１の例では、間隔シリーズが作成されるごとに、重複を判断したが、全ての間隔シリーズをまず対称構造ＤＢ５３に追加したのち、対称性が同一の間隔シリーズを特定し、いずれか１つを残し、他を削除して、間隔構造データ５４を作成してもよい。この場合を空間作成処理の第２の例として以下に説明する。
【００６５】
空間作成処理の第２の例では、先ず、間隔構造データ５４の作成処理について説明する。対称構造ＤＢ５３の作成は、対称性が同一の間隔シリーズを重複して含む対称空間３の作成に相当する。
【００６６】
図１０は、空間作成処理の第２の例における対称空間作成処理を説明するためのフローチャート図である。図１０では、図９の空間作成処理の第１の例のステップＳ１０８〜Ｓ１１０が省略されている。図１０中、ステップＳ２０１〜ステップＳ２０７が、図９のステップＳ１０１〜ステップＳ１０７に相当し、第１の例と異なる部分のみ説明する。
【００６７】
残り層数ｎが０になると（ステップＳ２０２）、空間作成部４０は、作成した間隔シリーズを対称構造ＤＢ５３に記録し（ステップＳ２１２）、現在の対称空間作成処理からリターンする。空間作成処理の第２の例では、対称性が同一の間隔シリーズを既に作成しているか否かの判断は行われない。
【００６８】
空間作成部４０は、全ての間隔シリーズを間隔構造データ５４に記録し終わると、この対称空間作成処理を終了し、以下に説明する、対称性が同一の間隔シリーズの重複を除去する重複除去処理を行う。
【００６９】
図１１は、空間作成処理の第２の例における重複除去処理を説明するためのフローチャート図である。図１１では、空間作成部４０は、記憶部１３０に記憶された間隔構造データ５４を用いて、深さ優先でノードを辿って対称空間３を探索する（ステップＳ２３１）。空間作成部４０は、ルートから１階層下のノードのうち１つを選択する。
【００７０】
空間作成部４０は、対称空間３において、現在の層（ルートからｋ番目の層）のノードの値（Ｐｋ）を間隔シリーズに追加する（ステップＳ２３２）。
【００７１】
次に、空間作成部４０は、現在のノードが末端（leaf node）か否かを判断する（ステップＳ２３３）。現在のノードが末端でない場合（ステップＳ２３３のＮｏ）、空間作成部４０は、層番号ｋを１インクリメントして（ステップＳ２３３−２）、ステップＳ２３２へと戻り、上述同様の処理を繰り返す。
【００７２】
現在のノードが末端の場合（ステップＳ２３３のＹｅｓ）、空間作成部４０は、作成した間隔シリーズが対称構造ＤＢ５３にあるか否かを判断する（ステップＳ２３４）。対称構造ＤＢ５３にある場合（ステップＳ２３４のＹｅｓ）、空間作成部４０は、間隔構造データ５４から、作成した間隔シリーズと一致する間隔シリーズを削除して（ステップＳ２３４−２）、ステップＳ２３１へと戻り、上述同様の処理を繰り返す。
【００７３】
対称構造ＤＢ５３にない場合（ステップＳ２３４のＮｏ）、空間作成部４０は、作成した間隔シリーズに対して、並進及び反転の対称操作を行って、対称構造の間隔シリーズを作成する（ステップＳ２３５）。
【００７４】
空間作成部４０は、作成した間隔シリーズと、対称操作により生成された対称構造の間隔シリーズとを対称構造ＤＢ５３に保存し（ステップＳ２３６）、対称構造ＤＢ５３のルートからの分岐を全て探索したか否かを判断する（ステップＳ２３７）。まだ、探索していない分岐がある場合（ステップＳ２３７のＮｏ）、空間作成部４０は、ステップＳ２３１へと戻り、上述同様の処理を繰り返す。
【００７５】
ルートからの分岐を全て探索した場合（ステップＳ２３７のＹｅｓ）、空間作成部４０は、この重複除去処理を終了する。間隔構造データ５４が完成する。
【００７６】
図１２は、本実施例によって得られた間隔シリーズと、候補構造との関係を示す図である。図１２では、４層による２原子の積層結晶構造９０ａの場合を例示している。空間作成部４０によって作成された構造空間４では、６個の間隔シリーズが示されている。６個の間隔シリーズは、それぞれ異なる候補構造８を表す。６個の候補構造８には、重複した結晶構造は存在しない。
【００７７】
対称性を除去しない場合、バイナリ空間では１６結晶構造、また、対称空間３では、９結晶構造の全てが候補構造となるが、本実施例では、６結晶構造まで削減できる。そのため、処理負荷を大幅に削減でき、材料の設計空間における探索処理を高速化できる。
【００７８】
図１３は、シミュレーションを行う候補数の比較を示す図である。図１３において、１６層、２０層、２４層、及び３０層について、具体的に、得られた候補数を示している。図１３（Ａ）は、バイナリ空間の候補数を示した図である。  
１６層の場合の候補数は、        65,536であり、
２０層の場合の候補数は、    1,048,576であり、
２４層の場合の候補数は、    16,777,216であり、
３０層の場合の候補数は、1,073,741,824
であった。
【００７９】
図１３（Ｂ）は、本実施例の構造空間の候補数を示した図である。  
１６層の場合の候補数は、          2,250であり、
２０層の場合の候補数は、        27,012であり、
２４層の場合の候補数は、        352,698であり、
３０層の場合の候補数は、  17,920,860
であった。
【００８０】
図１３（Ｃ）は、本実施例の構造空間の候補数に対するバイナリ空間の候補数の割合を示した図である。  
１６層の場合、バイナリ空間の候補数は、本実施例の構造空間の候補数の２９．１倍多く、
２０層の場合、バイナリ空間の候補数は、本実施例の構造空間の候補数の３８．８倍多く、
２４層の場合、バイナリ空間の候補数は、本実施例の構造空間の候補数の４７．６倍多く、
３０層の場合、バイナリ空間の候補数は、本実施例の構造空間の候補数の５９．９倍多かった。
【００８１】
層の数が多くなる程、本実施例では、数十分の１まで削減できる。具体的には、上記より、１６層の場合、凡そ１／３０に削減でき、３０層においては、１／６０の数にまで削減できる。
【００８２】
本実施例は、綿状、一般的な立体構造の２元積層材料に適用可能である。また、上述した実施例における空間作成部４０は、作成部の一例である。
【００８３】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、主々の変形や変更が可能である。
【００８４】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、
作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行う
ことをコンピュータが実行するシミュレーション方法。
（付記２）
前記コンピュータは、
対称操作によって得られる２以上の間隔シリーズに対しては、いずれか１つの間隔シリーズを前記第１ツリー構造に含める
ことを特徴とする付記１記載のシミュレーション方法。
（付記３）
前記コンピュータは、
前記間隔シリーズを作成するごとに、前記積層結晶構造の積層順に従って階層が深くなる第２ツリー構造に記憶し、
作成した間隔シリーズが、前記第１ツリー構造に存在せず、かつ、前記第２ツリー構造に存在しない場合に、該第１ツリー構造に格納する
ことを特徴とする付記２記載のシミュレーション方法。
（付記４）
前記コンピュータは、
前記間隔シリーズを作成するごとに、前記積層結晶構造の積層順に従って階層が深くなるように前記第１ツリー構造に記憶し、
前記第１ツリー構造を深さ優先でノードを辿ることで、前記間隔シリーズを作成し、
取得した前記間隔シリーズが該第１ツリー構造とは異なる第２ツリー構造にない場合、該間隔シリーズに対称操作を行って更に間隔シリーズを生成し、作成した前記間隔シリーズと、生成した間隔シリーズとを該第２ツリー構造に保存し、
取得した前記間隔シリーズが該第１ツリー構造とは異なる第２ツリー構造にある場合、該間隔シリーズを該第１ツリー構造から削除する
ことを特徴とする付記２記載のシミュレーション方法。
（付記５）
前記対称操作は、前記間隔シリーズの値を巡回させるように並進させる操作である
ことを特徴とする付記２乃至４の一項記載のシミュレーション方法。
（付記６）
前記対称操作は、前記間隔シリーズの値を反転させる操作である
ことを特徴とする付記２乃至４の一項記載のシミュレーション方法。
（付記７）
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成し、
作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行う
ことをコンピュータに実行させるシミュレーションプログラム。
（付記８）
２種類の原子のいずれか１種類の原子を配置させた層を複数積層することで表される積層結晶構造から、同一原子が配置された２層の間隔を層の数で表した間隔シリーズを、該積層結晶構造の積層順に従って階層が深くなり、かつ、重複した性質を除去した第１ツリー構造を作成する作成部と、
前記作成部によって作成された前記第１ツリー構造から得られる前記間隔シリーズで表される候補構造に対してシミュレーションを行うシミュレーション部と
ことをコンピュータに実行させるシミュレーション装置。
【符号の説明】
【００８５】
３          対称空間
４          構造空間
１１        ＣＰＵ
１２        主記憶装置
１３        補助記憶装置
１４        入力装置
１５        表示装置
１７        通信Ｉ／Ｆ
１８        ドライブ装置
１９        記憶媒体
４０        空間作成部
４２        シミュレーション部
５１        設定情報
５３        対称構造ＤＢ
５４        間隔構造データ
５７        シミュレーション結果
１００      シミュレーション装置
１３０      記憶部
【図１】
2019087107.tif 000005
【図２】
2019087107.tif 000006
【図３】
2019087107.tif 000007
【図４】
2019087107.tif 000008
【図５】
2019087107.tif 000009
【図６】
2019087107.tif 000010
【図７】
2019087107.tif 000011
【図８】
2019087107.tif 000012
【図９】
2019087107.tif 000013
【図１０】
2019087107.tif 000014
【図１１】
2019087107.tif 000015
【図１２】
2019087107.tif 000016
【図１３】
2019087107.tif 000017