JP2023021711A - Analysis method, analyzer, and analysis program - Google Patents

Analysis method, analyzer, and analysis program Download PDF

Info

Publication number
JP2023021711A
JP2023021711A JP2021126752A JP2021126752A JP2023021711A JP 2023021711 A JP2023021711 A JP 2023021711A JP 2021126752 A JP2021126752 A JP 2021126752A JP 2021126752 A JP2021126752 A JP 2021126752A JP 2023021711 A JP2023021711 A JP 2023021711A
Authority
JP
Japan
Prior art keywords
analysis
field component
calculation
electric field
cpu
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
Application number
JP2021126752A
Other languages
Japanese (ja)
Inventor
伸晃 久野
Nobuaki Kuno
渉 山田
Wataru Yamada
裕介 淺井
Yusuke Asai
泰司 鷹取
Taiji Takatori
隆 日景
Takashi Hikage
学 山本
Manabu Yamamoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hokkaido University NUC
Nippon Telegraph and Telephone Corp
Original Assignee
Hokkaido University NUC
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hokkaido University NUC, Nippon Telegraph and Telephone Corp filed Critical Hokkaido University NUC
Priority to JP2021126752A priority Critical patent/JP2023021711A/en
Publication of JP2023021711A publication Critical patent/JP2023021711A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

To reduce the calculation time of an electromagnetic field in the FDTD method.SOLUTION: An analysis method of an embodiment performs electromagnetic field analysis by using the finite-difference time-domain method (FDTD method). The analysis method of the embodiment includes: setting a plurality of voxels in an analysis area; and repeatedly executing updating a time step and electromagnetic field component calculation processing targeted for each of the plurality of voxels. The calculation processing includes first parallel processing (S300) including calculation of electric filed components and application of an absorption boundary condition to the electric field components.SELECTED DRAWING: Figure 9

Description

特許法第30条第2項適用申請有り 1.2021年2月23日 電子情報通信学会 総合大会 予稿集 にて公開 2.2021年3月11日 電子情報通信学会 総合大会 オンライン開催 にて発表Patent Law Article 30, Paragraph 2 application filed 1. Published at the IEICE General Conference Proceedings on February 23, 2021 2. Presented at the IEICE General Conference Online on March 11, 2021

実施形態は、解析方法、解析装置、及び解析プログラムに関する。 Embodiments relate to an analysis method, an analysis apparatus, and an analysis program.

無線通信システムの高速化が進むにつれて、装置から発生する電磁界を適切に解析する必要性が高まっている。電磁界の解析方法の一つとしては、FDTD法(Finite-Difference Time-Domain method)が知られている。FDTD法は、解析領域を多数のブロック(以下、ボクセルと呼ぶ)に分割し、解析領域内の波源により生じる電界と磁界とをマクスウェル方程式に基づいて時間更新していく電磁界解析手法である。 2. Description of the Related Art As wireless communication systems become faster, there is an increasing need to appropriately analyze electromagnetic fields generated from devices. As one of the electromagnetic field analysis methods, the FDTD method (Finite-Difference Time-Domain method) is known. The FDTD method is an electromagnetic field analysis technique in which an analysis area is divided into a large number of blocks (hereinafter referred to as voxels), and electric and magnetic fields generated by a wave source within the analysis area are updated over time based on Maxwell's equations.

特開2014-006851号公報JP 2014-006851 A 特開2017-011518号公報JP 2017-011518 A

しかしながら、FDTD法は、処理負担が大きく、多くの計算機資源を必要とする。このため、FDTD法は、大規模な解析領域を解析する場合や、第5世代移動通信のような高い周波数帯を対象とした伝搬特性を解析する場合に、計算時間が長くなるという課題を有する。 However, the FDTD method has a large processing load and requires many computer resources. For this reason, the FDTD method has the problem that the calculation time is long when analyzing a large analysis area or when analyzing propagation characteristics targeting high frequency bands such as 5th generation mobile communication. .

そこで、本発明は、FDTD法における電磁界の計算時間を短縮させることができる解析方法、解析装置、及び解析プログラムを提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to provide an analysis method, an analysis apparatus, and an analysis program capable of shortening the calculation time of an electromagnetic field in the FDTD method.

実施形態の解析方法は、FDTD法(Finite-Difference Time-Domain method)を用いて電磁界解析を行う解析方法である。実施形態の解析方法は、解析領域に複数のボクセルを設定することと、時間ステップの更新と、複数のボクセルのそれぞれを対象とした電磁界成分の計算処理とを繰り返し実行することと、を含む。計算処理は、電界成分の計算と電界成分に対する吸収境界条件の適用とを含む第1の並列処理を含む。 The analysis method of the embodiment is an analysis method for performing electromagnetic field analysis using the FDTD method (Finite-Difference Time-Domain method). The analysis method of the embodiment includes setting a plurality of voxels in an analysis region, updating the time step, and repeatedly executing calculation processing of electromagnetic field components for each of the plurality of voxels. . The computational process includes a first parallel process that includes computing the electric field component and applying an absorbing boundary condition to the electric field component.

実施形態の解析方法は、FDTD法における電磁界の計算時間を短縮させることができる。 The analysis method of the embodiment can shorten the calculation time of the electromagnetic field in the FDTD method.

図1は、FDTD法を用いた電磁界の解析処理で決定される解析領域の一例を示す斜視図である。FIG. 1 is a perspective view showing an example of an analysis region determined by an electromagnetic field analysis process using the FDTD method. 図2は、FDTD法を用いた電磁界の解析処理におけるボクセルの設定の一例を示す斜視図である。FIG. 2 is a perspective view showing an example of setting voxels in an electromagnetic field analysis process using the FDTD method. 図3は、FDTD法を用いた電磁界成分の計算方法の概要を示す模式図である。FIG. 3 is a schematic diagram showing an outline of a method for calculating electromagnetic field components using the FDTD method. 図4は、実施形態に係る解析装置のハードウェア構成の一例を示すブロック図である。FIG. 4 is a block diagram illustrating an example of the hardware configuration of the analysis device according to the embodiment; 図5は、実施形態に係る解析装置の機能構成の一例を示すブロック図である。FIG. 5 is a block diagram illustrating an example of the functional configuration of the analysis device according to the embodiment; 図6は、FDTD法を用いた電磁界の解析処理の流れの一例を示すフローチャートである。FIG. 6 is a flowchart showing an example of the flow of electromagnetic field analysis processing using the FDTD method. 図7は、比較例における電磁界成分の計算及び更新方法を示すフローチャートである。FIG. 7 is a flow chart showing a method of calculating and updating electromagnetic field components in a comparative example. 図8は、比較例における電界成分の計算方法の具体例を示すフローチャートである。FIG. 8 is a flow chart showing a specific example of a method for calculating electric field components in a comparative example. 図9は、実施形態における電磁界成分の計算及び更新方法の一例を示すフローチャートである。FIG. 9 is a flow chart showing an example of a method for calculating and updating electromagnetic field components in the embodiment. 図10は、実施形態における電界成分の計算方法の具体例を示すフローチャートである。FIG. 10 is a flow chart showing a specific example of a method for calculating electric field components in the embodiment. 図11は、解析処理の処理時間の第1の評価結果を示す棒グラフである。FIG. 11 is a bar graph showing the first evaluation result of the processing time of analysis processing. 図12は、解析処理の処理時間の第2の評価結果を示す棒グラフである。FIG. 12 is a bar graph showing the second evaluation result of the processing time of the analysis processing.

以下に、実施形態について図面を参照して説明する。実施形態は、発明の技術的思想を具体化するための装置や方法を例示している。図面は、模式的又は概念的なものである。以下の説明では、略同一の機能及び構成を有する構成要素に同一の符号が付されている。X方向、Y方向、Z方向は、互いに交差する方向に対応している。 Embodiments will be described below with reference to the drawings. The embodiments illustrate devices and methods for embodying the technical ideas of the invention. The drawings may be schematic or conceptual. In the following description, the same reference numerals are given to components having substantially the same functions and configurations. The X direction, Y direction, and Z direction correspond to directions that intersect each other.

<1>FDTD法の概要
図1は、FDTD法を用いた電磁界の解析処理で決定される解析領域ARの一例を示す斜視図である。図1に示すように、解析領域ARは、例えば、X方向に沿った幅がLxであり、Y方向に沿った奥行きがLyであり、Z方向沿った高さがLzである三次元領域である。解析領域ARは、例えば、波源1と、少なくとも一つの物体2とを含む。波源1は、電波(電磁界)の送信点である。波源1から送信される電波は、解析領域AR内の媒質定数が均一である場合には、波源1を中心とする球面状(電界強度コンター図では放射状)に伝搬する。媒質定数としては、導電率や透磁率などが使用される。物体2は、解析領域AR内の空間と異なる媒質定数を有する。物体2は、例えば建物である。解析領域ARに設定される物体2の数、物体2の形状、物体2毎の媒質定数などは、解析対象のモデルに応じて適宜設定される。解析領域ARには、複数のモデルが適用され得る。
<1> Overview of FDTD Method FIG. 1 is a perspective view showing an example of an analysis area AR determined by an electromagnetic field analysis process using the FDTD method. As shown in FIG. 1, the analysis area AR is a three-dimensional area having, for example, a width Lx along the X direction, a depth Ly along the Y direction, and a height Lz along the Z direction. be. Analysis area AR includes, for example, wave source 1 and at least one object 2 . A wave source 1 is a transmission point of radio waves (electromagnetic fields). The radio wave transmitted from the wave source 1 propagates spherically (radially in the electric field intensity contour diagram) around the wave source 1 when the medium constant in the analysis area AR is uniform. Electrical conductivity, magnetic permeability, and the like are used as medium constants. The object 2 has a medium constant different from that of the space within the analysis area AR. Object 2 is, for example, a building. The number of objects 2 set in the analysis area AR, the shape of the objects 2, the medium constant of each object 2, and the like are appropriately set according to the model to be analyzed. Multiple models can be applied to the analysis area AR.

図2は、FDTD法を用いた電磁界の解析処理におけるボクセルの設定の一例を示す斜視図である。図2に示すように、FDTD法を用いた電磁界の解析処理において、解析領域ARは、三次元に配列された複数のブロック(ボクセルVX)に分割される。ボクセルVXは、任意の大きさに設定される。各ボクセルVXには、座標値(x座標、y座標、z座標)が設定され、座標値に対応する物体2などの媒質定数が関連付けられる。なお、解析領域ARは、周囲に吸収境界条件が設定された解析対象であり、ボクセルVXの数は有限となっている。FDTD法では、電界と磁界の時間更新を行う際に、前時間ステップに計算された電界及び磁界と、ボクセルVX毎の媒質定数とを用いる。このため、FDTD法を用いて電磁界を計算するためには、ボクセルVX数に応じた電界、磁界、及び媒質定数を保持するためのメモリが必要である。 FIG. 2 is a perspective view showing an example of setting voxels in an electromagnetic field analysis process using the FDTD method. As shown in FIG. 2, in the electromagnetic field analysis processing using the FDTD method, the analysis area AR is divided into a plurality of blocks (voxels VX) arranged three-dimensionally. Voxel VX is set to an arbitrary size. Coordinate values (x-coordinate, y-coordinate, z-coordinate) are set to each voxel VX, and medium constants such as the object 2 corresponding to the coordinate values are associated. Note that the analysis area AR is an analysis target around which an absorbing boundary condition is set, and the number of voxels VX is finite. In the FDTD method, the electric field and magnetic field calculated in the previous time step and the medium constant for each voxel VX are used when time-updating the electric field and magnetic field. Therefore, in order to calculate the electromagnetic field using the FDTD method, a memory is required to hold the electric field, magnetic field, and medium constants corresponding to the number of voxels VX.

図3は、FDTD法を用いた電磁界成分の計算方法の概要を示す模式図である。図3に示すように、FDTD法において電磁界成分の計算が開始すると(計算開始)、解析領域Aにおける各ボクセルVXの電界及び磁界用の配列が設定される。この“配列”は、解析領域ARにおける電界及び磁界の計算に使用され、ボクセルVX毎に割り当てられるメモリ領域に対応する。そして、ボクセルVX毎に電界の3成分(Ex,Ey,Ez)及び磁界の3成分(Hx,Hy,Hz)が、所定の時間間隔で更新される。Ex、Ey、及びEzは、それぞれx方向、y方向、及びz方向に沿った電界成分に対応する。Hx、Hy、及びHzは、それぞれx方向、y方向、及びz方向に沿った磁界成分に対応する。電界成分及び磁界成分のそれぞれが収束すると、電磁界成分の計算が終了する(計算終了)。なお、複数のモデルを用いて電磁界が解析される場合には、例えば単一のモデル毎に計算が実行される。以下では、電磁界成分の計算及び更新回数のことを時間ステップ数と呼ぶ。例えば、1つのモデルのボクセル数がM個であり、時間ステップ数がT回である場合に、当該モデルが利用された場合のメモリへのアクセス回数はM×T回となる。 FIG. 3 is a schematic diagram showing an outline of a method for calculating electromagnetic field components using the FDTD method. As shown in FIG. 3, when the calculation of the electromagnetic field component is started in the FDTD method (calculation start), the arrays for the electric field and magnetic field of each voxel VX in the analysis area A are set. This "array" is used for the calculation of the electric and magnetic fields in the analysis area AR and corresponds to the memory area allocated for each voxel VX. Then, the three components of the electric field (Ex, Ey, Ez) and the three components of the magnetic field (Hx, Hy, Hz) are updated at predetermined time intervals for each voxel VX. Ex, Ey, and Ez correspond to the electric field components along the x-, y-, and z-directions, respectively. Hx, Hy, and Hz correspond to magnetic field components along the x-, y-, and z-directions, respectively. When each of the electric field component and the magnetic field component converges, the calculation of the electromagnetic field component ends (completion of calculation). When the electromagnetic field is analyzed using a plurality of models, calculation is performed for each single model, for example. The number of calculations and updates of electromagnetic field components is hereinafter referred to as the number of time steps. For example, when the number of voxels in one model is M and the number of time steps is T, the number of accesses to memory when the model is used is M×T times.

<2>構成
<2-1>解析装置10のハードウェア構成
図4は、実施形態に係る解析装置10のハードウェア構成の一例を示すブロック図である。図4に示すように、解析装置10は、例えば、入力部20、出力部21、通信部22、CPU(Central Processing Unit)23、ROM(Read Only Memory)24、RAM(Random Access Memory)25、記憶媒体26、及びバス27を備える。入力部20、出力部21、通信部22、CPU23、ROM24、RAM25、及び記憶媒体26は、バス27を介して接続され、コンピュータとしての機能を有する。
<2> Configuration <2-1> Hardware Configuration of Analysis Apparatus 10 FIG. 4 is a block diagram showing an example of the hardware configuration of the analysis apparatus 10 according to the embodiment. As shown in FIG. 4, the analysis device 10 includes, for example, an input unit 20, an output unit 21, a communication unit 22, a CPU (Central Processing Unit) 23, a ROM (Read Only Memory) 24, a RAM (Random Access Memory) 25, A storage medium 26 and a bus 27 are provided. The input unit 20, the output unit 21, the communication unit 22, the CPU 23, the ROM 24, the RAM 25, and the storage medium 26 are connected via a bus 27 and function as a computer.

入力部20は、例えばキーボードやマウスなどの入力装置である。出力部21は、例えばディスプレイなどの表示装置である。通信部22は、例えば有線又は無線の通信に使用されるネットワークインターフェースである。CPU23は、様々なプログラムを実行することが可能な集積回路である。CPU23は、例えばRAM25に展開されたプログラムを実行することによって、後述される解析装置10の解析機能を実現する。ROM24は、不揮発性の半導体メモリである。ROM24は、解析装置10を制御するためのプログラムや制御データなどを記憶する。RAM25は、例えば、揮発性の半導体メモリである。RAM25は、CPU23の作業領域として使用される。記憶媒体26は、不揮発にデータを記憶する記憶装置である。記憶媒体26としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)などが使用される。記憶媒体26は、解析装置10に内蔵されてもよいし、外付けされてもよい。 The input unit 20 is an input device such as a keyboard and a mouse. The output unit 21 is, for example, a display device such as a display. The communication unit 22 is a network interface used for wired or wireless communication, for example. The CPU 23 is an integrated circuit capable of executing various programs. The CPU 23 implements an analysis function of the analysis device 10, which will be described later, by executing a program developed in the RAM 25, for example. ROM 24 is a non-volatile semiconductor memory. The ROM 24 stores programs and control data for controlling the analysis device 10 . RAM 25 is, for example, a volatile semiconductor memory. A RAM 25 is used as a work area for the CPU 23 . The storage medium 26 is a storage device that stores data in a nonvolatile manner. As the storage medium 26, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like is used. The storage medium 26 may be built in the analysis device 10 or may be externally attached.

<2-2>解析装置10の機能構成
図5は、実施形態に係る解析装置10の機能構成の一例を示すブロック図である。図5に示すように、解析装置10は、記憶部31、パラメータ設定部32、配列初期化部33、配列データ読取部34、計算部35、並びにバス100及び102を備える。記憶部31は、バス100を介してパラメータ設定部32と配列初期化部33と配列データ読取部34とのそれぞれと接続され、バス102を介して計算部35と接続される。
<2-2> Functional Configuration of Analysis Apparatus 10 FIG. 5 is a block diagram showing an example of the functional configuration of the analysis apparatus 10 according to the embodiment. As shown in FIG. 5, the analysis device 10 includes a storage section 31, a parameter setting section 32, an array initialization section 33, an array data reading section 34, a calculation section 35, and buses 100 and 102. FIG. Storage unit 31 is connected to parameter setting unit 32 , array initialization unit 33 , and array data reading unit 34 via bus 100 , and to calculation unit 35 via bus 102 .

記憶部31は、バス100やバス102を介したデータの読み出し及び書き込みを実行可能なメモリ(例えばRAM25)により構成される。記憶部31は、例えば、解析空間情報記憶部310及びボクセルモデル記憶部312を有する。解析空間情報記憶部310は、解析領域ARに関する情報を記憶する。例えば、解析空間情報記憶部310は、各ボクセルVXの媒質定数を記憶する。ボクセルモデル記憶部312は、解析領域ARに関連付けられた少なくとも一つのモデルを記憶する。なお、記憶部31は、計算部35などの処理結果を記憶してもよい。 The storage unit 31 is composed of a memory (for example, the RAM 25) capable of reading and writing data via the bus 100 and the bus 102. FIG. The storage unit 31 has, for example, an analysis space information storage unit 310 and a voxel model storage unit 312 . The analysis space information storage unit 310 stores information about the analysis area AR. For example, the analysis space information storage unit 310 stores the medium constant of each voxel VX. The voxel model storage unit 312 stores at least one model associated with the analysis area AR. Note that the storage unit 31 may store the processing result of the calculation unit 35 or the like.

パラメータ設定部32は、解析領域ARに対して、解析空間サイズ、ボクセルサイズ、離散時間間隔の定義、解析モデル(アンテナや解析空間の条件など)を設定する。そして、パラメータ設定部32は、これらの設定値を記憶部31に記憶させる。配列初期化部33は、解析処理に必要なサイズの配列を確保して、確保した配列を記憶部31に記憶させる。配列データ読取部34は、電界及び磁界の計算に使用される配列データを読み出し、記憶部31に記憶させる。 The parameter setting unit 32 sets the analysis space size, the voxel size, the definition of the discrete time interval, and the analysis model (antenna, analysis space conditions, etc.) for the analysis area AR. Then, the parameter setting unit 32 causes the storage unit 31 to store these setting values. The array initialization unit 33 secures an array of a size required for analysis processing, and stores the secured array in the storage unit 31 . The array data reading unit 34 reads array data used for calculation of the electric field and magnetic field, and stores the data in the storage unit 31 .

計算部35は、電界及び磁界を計算するための各部を有する。具体的には、計算部35は、電界成分計算部350、電界吸収境界条件計算部352、磁界成分計算部354、及び磁界吸収境界条件計算部356を有する。 The calculator 35 has units for calculating the electric field and the magnetic field. Specifically, the calculator 35 has an electric field component calculator 350 , an electric field absorption boundary condition calculator 352 , a magnetic field component calculator 354 , and a magnetic field absorption boundary condition calculator 356 .

電界成分計算部350は、解析空間情報記憶部310からボクセルVX毎に媒質定数を読み出し、ボクセルモデル記憶部312からモデルを読み出す。そして、電界成分計算部350は、読み出したボクセルVX毎の媒質定数とモデルとに基づいて各ボクセルVXに対する電界成分を計算し、計算結果を記憶部31に記憶させる。電界吸収境界条件計算部352は、解析領域ARにおける電界成分の吸収境界条件を計算する。そして、電界吸収境界条件計算部352は、電界成分計算部350により計算された電界成分に対して吸収境界条件を適用する計算を実行し、計算結果を記憶部31に記憶させる。 The electric field component calculation unit 350 reads the medium constant for each voxel VX from the analysis space information storage unit 310 and reads the model from the voxel model storage unit 312 . Then, the electric field component calculator 350 calculates the electric field component for each voxel VX based on the read medium constant and model for each voxel VX, and stores the calculation result in the storage unit 31 . The electric field absorption boundary condition calculator 352 calculates an absorption boundary condition for the electric field component in the analysis area AR. Then, the electric field absorption boundary condition calculation unit 352 executes calculation for applying the absorption boundary condition to the electric field component calculated by the electric field component calculation unit 350 and causes the storage unit 31 to store the calculation result.

磁界成分計算部354は、解析空間情報記憶部310からボクセルVX毎に媒質定数を読み出し、ボクセルモデル記憶部312からモデルを読み出す。そして、磁界成分計算部354は、読み出したボクセルVX毎の媒質定数とモデルとに基づいて各ボクセルVXに対する磁界成分を計算し、計算結果を記憶部31に記憶させる。磁界吸収境界条件計算部356は、解析領域ARにおける磁界成分の吸収境界条件を計算する。そして、磁界吸収境界条件計算部356は、磁界成分計算部354により計算された磁界成分に対して吸収境界条件を適用する計算を実行し、計算結果を記憶部31に記憶させる。 The magnetic field component calculation unit 354 reads the medium constant for each voxel VX from the analysis space information storage unit 310 and reads the model from the voxel model storage unit 312 . Then, the magnetic field component calculator 354 calculates the magnetic field component for each voxel VX based on the read medium constant and model for each voxel VX, and stores the calculation result in the storage unit 31 . The magnetic field absorbing boundary condition calculator 356 calculates the absorbing boundary condition of the magnetic field component in the analysis area AR. Then, the magnetic field absorbing boundary condition calculation unit 356 executes calculation for applying the absorbing boundary condition to the magnetic field component calculated by the magnetic field component calculation unit 354 and stores the calculation result in the storage unit 31 .

<3>動作
<3-1>解析処理の流れ
図6は、FDTD法を用いた電磁界の解析処理の流れの一例を示すフローチャートである。以下に、図6を参照して、FDTD法を用いた電磁界の解析処理の流れの一例について説明する。
<3> Operation <3-1> Flow of Analysis Processing FIG. 6 is a flowchart showing an example of the flow of analysis processing of an electromagnetic field using the FDTD method. An example of the flow of electromagnetic field analysis processing using the FDTD method will be described below with reference to FIG.

CPU23は、例えばユーザの操作に応じて解析処理を開始する(開始)。 The CPU 23 starts analysis processing (start), for example, in response to a user's operation.

まず、CPU23は、計算対象モデルを読み出す(S100)。言い変えると、ボクセルモデル記憶部312に、今回の計算対象に関連付けられたモデルが読み出され、ボクセルモデルが生成される。 First, the CPU 23 reads out a calculation target model (S100). In other words, the voxel model storage unit 312 reads the model associated with the current calculation target to generate the voxel model.

次に、CPU23は、解析領域ARを決定する(S102)。言い換えると、例えばパラメータ設定部32が、計算対象に対して解析領域ARを設定する。 Next, the CPU 23 determines an analysis area AR (S102). In other words, for example, the parameter setting unit 32 sets the analysis area AR for the calculation target.

次に、CPU23は、解析領域ARにボクセルVXを設定する(S104)。具体的には、例えば、パラメータ設定部32が、各ボクセルVXに設定した3次元(i,j,k)絶対座標値を、ボクセルモデル記憶部312に入力する。“i”は、x軸インデックス(i=1,2,…,Nx)に対応し、“j”は、y軸インデックス(j=1,2,…,Ny)に対応し、“k”は、z軸インデックス(k=1,2,…,Nz)に対応している。 Next, the CPU 23 sets voxels VX in the analysis area AR (S104). Specifically, for example, the parameter setting unit 32 inputs the three-dimensional (i, j, k) absolute coordinate values set for each voxel VX to the voxel model storage unit 312 . "i" corresponds to the x-axis index (i = 1, 2, ..., Nx), "j" corresponds to the y-axis index (j = 1, 2, ..., Ny), and "k" corresponds to , corresponding to the z-axis indices (k=1, 2, . . . , Nz).

次に、CPU23は、配列を確保する(S106)。具体的には、配列初期化部33が、電界の3成分(Ex,Ey,Ez)と磁界の3成分(Ex,Ey,Ez)との計算に用いる領域をメモリ(例えばRAM25)上に確保する。 Next, the CPU 23 secures an array (S106). Specifically, the array initialization unit 33 reserves an area on the memory (for example, the RAM 25) for use in calculating the three components of the electric field (Ex, Ey, Ez) and the three components of the magnetic field (Ex, Ey, Ez). do.

次に、CPU23は、各ボクセルVXに対して媒質定数を割り当てる(S108)。具体的には、配列データ読取部34が、設定された各座標値に対応する媒質定数をボクセルモデル記憶部312から読み出す。 Next, the CPU 23 assigns a medium constant to each voxel VX (S108). Specifically, the array data reading unit 34 reads the medium constant corresponding to each set coordinate value from the voxel model storage unit 312 .

次に、CPU23は、時間ステップを更新する(S110)。なお、S110の処理が初回である場合には、時間ステップ数として初期値(例えば“1”)が適用される。S110の処理が当該解析処理において2回目以降である場合には、時間ステップ数は、S110の処理が実行された回数に応じた数値になる。 Next, the CPU 23 updates the time step (S110). When the process of S110 is performed for the first time, an initial value (for example, "1") is applied as the number of time steps. When the process of S110 is the second or subsequent time in the analysis process, the number of time steps is a numerical value corresponding to the number of times the process of S110 has been executed.

次に、CPU23は、電磁界成分の計算及び更新を実行する(S112)。電磁界成分の計算及び更新方法の詳細については後述する。 Next, the CPU 23 calculates and updates the electromagnetic field component (S112). The details of how to calculate and update the electromagnetic field components will be described later.

次に、CPU23は、電磁界成分の計算が収束したか否かを判定する(S114)。具体的には、例えば、CPU23が、現在の時間ステップにおける電界成分(Ex,Ey,Ez)と磁界成分(Hx,Hy,Hz)とのそれぞれの数値と、以前の時間ステップにおける電磁界成分の計算結果とを比較することによって、電磁界成分の計算が収束したか否かを判定する。 Next, the CPU 23 determines whether or not the calculation of the electromagnetic field component has converged (S114). Specifically, for example, the CPU 23 outputs the numerical values of the electric field components (Ex, Ey, Ez) and the magnetic field components (Hx, Hy, Hz) at the current time step, and the electromagnetic field components at the previous time step. By comparing with the calculation result, it is determined whether or not the calculation of the electromagnetic field component has converged.

S114の処理において電磁界成分の計算が収束していない場合に(S114,NO)、CPU23は、S110の処理に進む。つまり、CPU23は、次の時間ステップにおける電磁界成分の計算及び更新を実行する。 When the calculation of the electromagnetic field component has not converged in the process of S114 (S114, NO), the CPU 23 proceeds to the process of S110. That is, the CPU 23 executes calculation and update of the electromagnetic field component in the next time step.

S114の処理において電磁界成分の計算が収束している場合に(S114,YES)、CPU23は、図6の一連の処理を終了する(終了)。その後、解析装置10は、解析結果を、例えば記憶媒体26に記憶させる。なお、解析装置10は、解析結果を出力部21に表示させてもよい。 When the calculation of the electromagnetic field component has converged in the process of S114 (S114, YES), the CPU 23 ends the series of processes in FIG. 6 (end). After that, the analysis device 10 stores the analysis result in the storage medium 26, for example. Note that the analysis device 10 may display the analysis result on the output unit 21 .

<3-2>比較例における電磁界成分の計算及び更新方法
図7は、比較例における電磁界成分の計算及び更新方法を示すフローチャートである。以下に、図7を参照して、比較例における電磁界成分の計算及び更新方法について説明する。
<3-2> Method of Calculating and Updating Electromagnetic Field Components in Comparative Example FIG. 7 is a flowchart showing a method of calculating and updating electromagnetic field components in a comparative example. A method of calculating and updating electromagnetic field components in the comparative example will be described below with reference to FIG.

比較例では、電磁界成分の計算及び更新が開始すると、CPU23は、まず電界成分を計算する(S200)。電界成分の計算では、電界成分計算部350が、マクスウェルの方程式を空間及び時間の領域で展開した差分方程式と、S100の処理で生成されたボクセルモデルとを用いて、解析領域ARにおける電界成分を計算する。 In the comparative example, when the calculation and update of the electromagnetic field component is started, the CPU 23 first calculates the electric field component (S200). In the calculation of the electric field component, the electric field component calculation unit 350 uses the difference equation obtained by expanding Maxwell's equations in the space and time domains and the voxel model generated in the processing of S100 to calculate the electric field component in the analysis area AR. calculate.

次に、CPU23は、電界成分に対して吸収境界条件を適用する(S202)。電界成分に対する吸収境界条件の適用では、電界吸収境界条件計算部352が、S200の処理で計算された電界成分と、後述するS204の処理で計算された磁界成分とを用いて、解析領域ARの境界で電磁波が反射しないように、電界成分の吸収境界条件を計算する。なお、電界吸収境界条件計算部352は、最初に電界成分の吸収境界条件を計算する場合の磁界成分として、例えば“0”又は予め設定された初期値の磁界成分を用いる。 Next, the CPU 23 applies an absorption boundary condition to the electric field component (S202). In applying the absorbing boundary condition to the electric field component, the electric field absorbing boundary condition calculation unit 352 uses the electric field component calculated in the process of S200 and the magnetic field component calculated in the process of S204 described later to calculate the analysis area AR. Calculate the absorbing boundary condition of the electric field component so that the electromagnetic waves are not reflected at the boundary. The electric field absorption boundary condition calculator 352 uses, for example, "0" or a preset initial value of the magnetic field component as the magnetic field component when first calculating the absorption boundary condition of the electric field component.

次に、CPU23は、磁界成分を計算する(S204)。具体的には、磁界成分計算部354が、マクスウェルの方程式を空間及び時間の領域で展開した差分方程式と、S100の処理で生成されたボクセルモデルとを用いて、解析領域ARにおける磁界成分を計算する。 Next, the CPU 23 calculates magnetic field components (S204). Specifically, the magnetic field component calculation unit 354 calculates the magnetic field component in the analysis area AR using the difference equation obtained by expanding Maxwell's equations in the space and time domains and the voxel model generated in the process of S100. do.

次に、CPU23は、磁界成分に対して吸収境界条件を適用する(S206)。具体的には、磁界吸収境界条件計算部356が、S200の処理で計算された電界成分と、S204の処理で計算された磁界成分とを用いて、解析領域ARの境界で電磁波が反射しないように、磁界成分の吸収境界条件を計算する。なお、電界吸収境界条件計算部352は、最初に電界成分の吸収境界条件を計算する場合に、“0”又は予め設定された初期値の磁界成分を用いる。S206の処理が完了すると、CPU23は、図8の一連の処理を終了する(リターン)。 Next, the CPU 23 applies an absorbing boundary condition to the magnetic field component (S206). Specifically, the magnetic field absorption boundary condition calculation unit 356 uses the electric field component calculated in the process of S200 and the magnetic field component calculated in the process of S204 to prevent the electromagnetic wave from being reflected at the boundary of the analysis area AR. Then, we calculate the absorbing boundary condition of the magnetic field component. Note that the electric field absorption boundary condition calculator 352 uses the magnetic field component of “0” or a preset initial value when first calculating the absorption boundary condition of the electric field component. When the processing of S206 is completed, the CPU 23 terminates the series of processing in FIG. 8 (return).

(比較例における電界成分の計算方法の具体例)
図8は、比較例における電界成分の計算方法の具体例を示すフローチャートであり、解析領域ARに設定された各ボクセルVXの電界成分Exの計算方法の一例を示している。以下に、図8を参照して、比較例における電界成分の更新方法の具体例について説明する。なお、本計算方法においてCPU23は、変数“i”、“j”、“j1”、“k”及び“k1”を定義している。変数i、変数j、及び変数kは、それぞれx座標、y座標、及びz座標に関連付けられている。
(Specific example of calculation method of electric field component in comparative example)
FIG. 8 is a flowchart showing a specific example of a method of calculating electric field components in the comparative example, and shows an example of a method of calculating electric field components Ex of each voxel VX set in the analysis area AR. A specific example of the electric field component updating method in the comparative example will be described below with reference to FIG. 8 . In this calculation method, the CPU 23 defines variables "i", "j", "j1", "k" and "k1". The variables i, j, and k are associated with x, y, and z coordinates, respectively.

ある時間ステップにおいてS112の処理を開始すると、CPU23は、S200の処理において、電界成分Exの計算を開始する(開始)。 After starting the process of S112 at a certain time step, the CPU 23 starts (starts) the calculation of the electric field component Ex in the process of S200.

まず、CPU23は、“k=2”の処理を実行する(S210)。すなわち、S210の処理では、変数kに“2”が代入される。 First, the CPU 23 executes the process of "k=2" (S210). That is, in the process of S210, "2" is substituted for the variable k.

次に、CPU23は、“k1=k-1”の処理を実行する(S212)。すなわち、S212の処理では、変数k1に“k-1”の計算結果が代入される。 Next, the CPU 23 executes the processing of "k1=k-1" (S212). That is, in the process of S212, the calculation result of "k-1" is substituted for the variable k1.

次に、CPU23は、“j=2”の処理を実行する(S214)。すなわち、S214の処理では、変数jに“2”が代入される。 Next, the CPU 23 executes the process of "j=2" (S214). That is, in the process of S214, "2" is substituted for the variable j.

次に、CPU23は、“j1=j-1”の処理を実行する(S216)。すなわち、S216の処理では、変数j1に“j-1”の計算結果が代入される。 Next, the CPU 23 executes the processing of "j1=j-1" (S216). That is, in the process of S216, the calculation result of "j-1" is substituted for the variable j1.

次に、CPU23は、“i=1”の処理を実行する(S218)。すなわち、S218の処理では、変数iに“1”が代入される。 Next, the CPU 23 executes the process of "i=1" (S218). That is, in the process of S218, "1" is substituted for the variable i.

次に、CPU23は、電界成分Ex(x,y,z)を計算する(S220)。具体的には、電界成分Ex(x,y,z)の計算には、例えば以下に示された関数(1)が使用される。
ex(i,j,k) = cax(i,j,k) * ex(i,j,k) + cbx(i,j,k) * ((hz(i,j,k)-hz(i,j1,k)) * kedy(j) - (hy(i,j,k) - hy(i,j,k1)) * kedz(k)) …(1)
“ex(i,j,k)”は、座標(i,j,k)に関連付けられたボクセルVXの電界成分Exの計算結果に対応している。“cax(i,j,k)”は、誘電率と導電率に基づく電界にかかる係数に対応している。“cbx(i,j,k)”は、誘電率と導電率に基づく磁界にかかる係数に対応している。“hy(i,j,k)”は、座標(i,j,k)に関連付けられたボクセルVXの磁界成分Hyの計算結果に対応している。“hz(i,j,k)”は、座標(i,j,k)に関連付けられたボクセルVXの磁界成分Hzの計算結果に対応している。“kedy”は、y軸方向のボクセル寸法の逆数に基づく係数に対応している。“kedz”は、z軸方向のボクセル寸法の逆数に基づく係数に対応している。
Next, the CPU 23 calculates the electric field component Ex (x, y, z) (S220). Specifically, the function (1) shown below, for example, is used to calculate the electric field component Ex(x, y, z).
ex(i,j,k) = cax(i,j,k) * ex(i,j,k) + cbx(i,j,k) * ((hz(i,j,k)-hz(i ,j1,k)) * kedy(j) - (hy(i,j,k) - hy(i,j,k1)) * kedz(k)) …(1)
"ex(i,j,k)" corresponds to the calculated electric field component Ex of the voxel VX associated with the coordinates (i,j,k). "cax(i,j,k)" corresponds to the coefficients on the electric field based on permittivity and conductivity. "cbx(i,j,k)" corresponds to the coefficients on the magnetic field based on permittivity and conductivity. "hy(i,j,k)" corresponds to the calculated magnetic field component Hy of the voxel VX associated with the coordinates (i,j,k). "hz(i,j,k)" corresponds to the calculated magnetic field component Hz of the voxel VX associated with the coordinates (i,j,k). "kedy" corresponds to a factor based on the reciprocal of the voxel dimension along the y-axis. "kedz" corresponds to a factor based on the reciprocal of the voxel dimension along the z-axis.

次に、CPU23は、“i=mkx”が満たされているか否かを判定する(S222)。“mkx”は、解析領域ARに割り当てられたx座標のうち最も大きい数値に対応する定数である。すなわち、S222の処理において、CPU23は、x座標を変化させたループ処理が完了したか否かを判定する。 Next, the CPU 23 determines whether or not "i=mkx" is satisfied (S222). "mkx" is a constant corresponding to the largest numerical value among the x-coordinates assigned to the analysis area AR. That is, in the process of S222, the CPU 23 determines whether or not the loop process in which the x-coordinate is changed has been completed.

S222の処理において“i=mkx”が満たされていないと判定した場合に(S220,NO)、CPU23は、“i=i+1”の処理を実行する(S224)。すなわち、S224の処理では、変数iがインクリメントされる。S224の処理が完了すると、CPU23は、S220の処理に進む。つまり、CPU23は、隣のx座標のボクセルVXに対応する電界成分Exの計算処理を実行する。 When it is determined in the process of S222 that "i=mkx" is not satisfied (S220, NO), the CPU 23 executes the process of "i=i+1" (S224). That is, in the process of S224, the variable i is incremented. After completing the process of S224, the CPU 23 proceeds to the process of S220. That is, the CPU 23 executes calculation processing of the electric field component Ex corresponding to the next x-coordinate voxel VX.

S222の処理において“i=mkx”が満たされていると判定した場合に、CPU23は、“j=mky”が満たされているか否かを判定する(S226)。“mky”は、解析領域ARに割り当てられたy座標のうち最も大きい数値に対応する定数である。すなわち、S226の処理において、CPU23は、y座標を変化させたループ処理が完了したか否かを判定する。 When determining that "i=mkx" is satisfied in the process of S222, the CPU 23 determines whether "j=mky" is satisfied (S226). "mky" is a constant corresponding to the largest numerical value among the y-coordinates assigned to the analysis area AR. That is, in the process of S226, the CPU 23 determines whether or not the loop process in which the y-coordinate is changed has been completed.

S226の処理において“j=mky”が満たされていないと判定した場合に(S226,NO)、CPU23は、“j=j+1”の処理を実行する(S228)。すなわち、S228の処理では、変数jがインクリメントされる。S228の処理が完了すると、CPU23は、S216の処理に進む。つまり、CPU23は、隣のy座標のボクセルVXに対応する電界成分Exの計算処理を実行する。 When it is determined in the process of S226 that "j=mky" is not satisfied (S226, NO), the CPU 23 executes the process of "j=j+1" (S228). That is, in the process of S228, the variable j is incremented. When the process of S228 is completed, the CPU 23 proceeds to the process of S216. That is, the CPU 23 executes calculation processing of the electric field component Ex corresponding to the next y-coordinate voxel VX.

S226の処理において“j=mky”が満たされていると判定した場合に(S226,YES)、CPU23は、“k=mkz”が満たされているか否かを判定する(S230)。“mkz”は、解析領域ARに割り当てられたz座標のうち最も大きい数値に対応する定数である。すなわち、S230の処理において、CPU23は、z座標を変化させたループ処理が完了したか否かを判定している。 When determining that "j=mky" is satisfied in the process of S226 (S226, YES), the CPU 23 determines whether "k=mkz" is satisfied (S230). “mkz” is a constant corresponding to the largest numerical value among the z-coordinates assigned to the analysis area AR. That is, in the process of S230, the CPU 23 determines whether or not the loop process in which the z-coordinate is changed has been completed.

S230の処理において“k=mkz”が満たされていないと判定した場合に(S230,NO)、CPU23は、“k=k+1”の処理を実行する(S232)。すなわち、S232の処理では、変数kがインクリメントされる。S232の処理が完了すると、CPU23は、S212の処理に進む。つまり、CPU23は、隣のz座標のボクセルVXに対応する電界成分Exの計算処理を実行する。 When it is determined in the process of S230 that "k=mkz" is not satisfied (S230, NO), the CPU 23 executes the process of "k=k+1" (S232). That is, in the process of S232, the variable k is incremented. When the process of S232 is completed, the CPU 23 proceeds to the process of S212. That is, the CPU 23 executes calculation processing of the electric field component Ex corresponding to the next z-coordinate voxel VX.

S230の処理において“k=mkz”が満たされていると判定した場合に(S230,YES)、CPU23は、図8の一連の処理を終了する(終了)。 When determining that "k=mkz" is satisfied in the process of S230 (S230, YES), the CPU 23 terminates the series of processes in FIG. 8 (end).

なお、電界成分Ey及びEzのそれぞれの計算は、例えば電界成分Exと同様の順番で実行され、電界成分Exと類似した計算方法が適用される。例えば、電界成分Ey(x,y,z)の計算(すなわち、ey(i,j,k)の計算)には、以下に示された関数(2)が使用され、電界成分Ez(x,y,z)の計算(すなわち、ez(i,j,k)の更新)には、以下に示された関数(3)が使用される。 Calculations of the electric field components Ey and Ez are performed in the same order as the electric field component Ex, for example, and a calculation method similar to that of the electric field component Ex is applied. For example, the calculation of the electric field component Ey(x,y,z) (i.e., the calculation of ey(i,j,k)) uses the function (2) shown below and the electric field component Ez(x, y,z) (ie updating ez(i,j,k)) uses function (3) shown below.

ey(i,j,k) = cay(i,j,k) * ey(i,j,k) + cby(i,j,k) * ((hx(i,j,k)-hx(i,j,k1)) * kedz(k) - (hz(i,j,k) - hz(i1,j,k)) * kedx(i)) …(2)
ez(i,j,k) = caz(i,j,k) * ez(i,j,k) + cbz(i,j,k) * ((hy(i,j,k)-hy(i1,j,k)) * kedx(i) - (hx(i,j,k) - hx(i,j1,k)) * kedy(j)) …(3)
また、磁界成分Hx、Hy及びHzのそれぞれについても、マクスウェル方程式に基づいて計算される。解析領域AR内の各ボクセルVXの磁界成分Hx、Hy及びHzのそれぞれは、例えば電界成分と同様の順番で計算され得る。
ey(i,j,k) = cay(i,j,k) * ey(i,j,k) + cby(i,j,k) * ((hx(i,j,k)-hx(i ,j,k1)) * kedz(k) - (hz(i,j,k) - hz(i1,j,k)) * kedx(i)) …(2)
ez(i,j,k) = caz(i,j,k) * ez(i,j,k) + cbz(i,j,k) * ((hy(i,j,k)-hy(i1 ,j,k)) * kedx(i) - (hx(i,j,k) - hx(i,j1,k)) * kedy(j)) …(3)
Also, each of the magnetic field components Hx, Hy and Hz is calculated based on Maxwell's equations. Each of the magnetic field components Hx, Hy and Hz of each voxel VX within the analysis area AR can be calculated in the same order as the electric field components, for example.

<3-3>実施形態における電磁界成分の計算及び更新方法
図9は、実施形態における電磁界成分の計算及び更新方法の一例を示すフローチャートである。図9に示すように、実施形態では、電磁界成分の計算及び更新が開始すると、CPU23は、まず、電界成分の計算と電界成分に対する吸収境界条件の適用の並列処理を実行する(S300)。そして、CPU23は、磁界成分の計算と磁界成分に対する吸収境界条件の適用の並列処理を実行する(S302)。S302の処理が完了すると、CPU23は、図9の一連の処理を終了する(リターン)。このように、S300の並列処理(電界成分)と、S302の並列処理(磁界成分)とは、互いに異なるループ処理により実行される、なお、実施形態における電磁界成分の計算方法と、電磁界成分に対する吸収境界条件の適用方法とのそれぞれの詳細は、比較例と同様である。
<3-3> Electromagnetic Field Component Calculation and Updating Method in Embodiment FIG. 9 is a flow chart showing an example of an electromagnetic field component calculation and updating method in the embodiment. As shown in FIG. 9, in the embodiment, when the calculation and updating of the electromagnetic field component is started, the CPU 23 first executes parallel processing of calculation of the electric field component and application of the absorbing boundary condition to the electric field component (S300). Then, the CPU 23 executes parallel processing of calculation of the magnetic field component and application of the absorbing boundary condition to the magnetic field component (S302). When the processing of S302 is completed, the CPU 23 terminates the series of processing in FIG. 9 (return). In this way, the parallel processing of S300 (electric field component) and the parallel processing of S302 (magnetic field component) are executed by different loop processes. The details of how to apply the absorbing boundary condition to are the same as in the comparative example.

(実施形態における電界成分の計算方法の具体例)
図10は、実施形態における電界成分の計算方法の具体例を示すフローチャートであり、解析領域ARに設定された各ボクセルVXの電界の3成分の計算方法の一例を示している。以下に、図10を参照して、実施形態における電界成分の更新方法の具体例について説明する。本計算方法においてCPU23は、変数“j”、“j1”、“k”及び“k1”を定義している。変数j及び変数kは、それぞれy座標及びz座標に関連付けられている。
(Specific example of method for calculating electric field component in the embodiment)
FIG. 10 is a flowchart showing a specific example of a method of calculating electric field components in the embodiment, and shows an example of a method of calculating three electric field components of each voxel VX set in the analysis area AR. A specific example of the electric field component updating method according to the embodiment will be described below with reference to FIG. 10 . In this calculation method, the CPU 23 defines variables "j", "j1", "k" and "k1". The variables j and k are associated with the y and z coordinates respectively.

ある時間ステップにおいてS112の処理を開始すると、CPU23は、S300の処理を開始する(開始)。 When the process of S112 is started at a certain time step, the CPU 23 starts the process of S300 (start).

まず、CPU23は、“k=1”の処理を実行する(S310)。すなわち、S310の処理では、変数kに“1”が代入される。 First, the CPU 23 executes the process of "k=1" (S310). That is, in the process of S310, "1" is substituted for the variable k.

次に、CPU23は、“j=1”の処理を実行する(S312)。すなわち、S312の処理では、変数jに“1”が代入される。 Next, the CPU 23 executes the process of "j=1" (S312). That is, in the process of S312, "1" is substituted for the variable j.

次に、CPU23は、“k1=k-1”の処理を実行する(S314)。すなわち、S314の処理では、変数k1に“k-1”の計算結果が代入される。 Next, the CPU 23 executes the processing of "k1=k-1" (S314). That is, in the process of S314, the calculation result of "k-1" is substituted for the variable k1.

次に、CPU23は、“j1=j-1”の処理を実行する(S316)。すなわち、S316の処理では、変数j1に“j-1”の計算結果が代入される。 Next, the CPU 23 executes the processing of "j1=j-1" (S316). That is, in the process of S316, the calculation result of "j-1" is substituted for the variable j1.

次に、CPU23は、電界成分Ex(x,y,z)、Ey(x,y,z)、及びEz(x,y,z)を計算する(S318)。S318の処理において、電界成分Ex(x,y,z)、Ey(x,y,z)、及びEz(x,y,z)のそれぞれは、例えば、図8を参照して説明された電界成分の計算方法と同様の計算方法により計算される。 Next, the CPU 23 calculates electric field components Ex (x, y, z), Ey (x, y, z), and Ez (x, y, z) (S318). In the process of S318, each of the electric field components Ex(x, y, z), Ey(x, y, z), and Ez(x, y, z) is converted to the electric field described with reference to FIG. It is calculated by the same calculation method as the calculation method of the component.

次に、CPU23は、電界成分Ex(x,y,z)、Ey(x,y,z)、及びEz(x,y,z)に対して吸収境界条件を適用する(S320)。S320の処理における電界成分Ex(x,y,z)、Ey(x,y,z)、及びEz(x,y,z)のそれぞれに対する吸収境界条件の適用は、例えば、図7を参照して説明された方法と同様の方法により実行される。 Next, the CPU 23 applies an absorbing boundary condition to the electric field components Ex(x, y, z), Ey(x, y, z), and Ez(x, y, z) (S320). The application of absorbing boundary conditions to each of the electric field components Ex(x, y, z), Ey(x, y, z), and Ez(x, y, z) in the processing of S320, see, for example, FIG. is performed in a manner similar to that described in .

次に、CPU23は、“j=mky”が満たされているか否かを判定する(S322)。すなわち、S322の処理において、CPU23は、y座標を変化させたループ処理が完了したか否かを判定している。 Next, the CPU 23 determines whether or not "j=mky" is satisfied (S322). That is, in the processing of S322, the CPU 23 determines whether or not the loop processing in which the y-coordinate is changed has been completed.

S322の処理において“j=mky”が満たされていないと判定した場合に(S322,NO)、CPU23は、“j=j+1”の処理を実行する(S324)。すなわち、S324の処理では、変数jがインクリメントされる。S324の処理が完了すると、CPU23は、S314の処理に進む。つまり、CPU23は、隣のy座標のボクセルVXに対応する電界の3成分の計算及び吸収境界条件の適用処理を実行する。 When it is determined in the process of S322 that "j=mky" is not satisfied (S322, NO), the CPU 23 executes the process of "j=j+1" (S324). That is, in the process of S324, the variable j is incremented. When the process of S324 is completed, the CPU 23 proceeds to the process of S314. That is, the CPU 23 executes the calculation of the three components of the electric field corresponding to the next y-coordinate voxel VX and the application of the absorbing boundary condition.

S322の処理において“j=mky”が満たされていると判定した場合に(S322,YES)、CPU23は、“k=mkz”が満たされているか否かを判定する(S326)。すなわち、S326の処理において、CPU23は、z座標を変化させたループ処理が完了したか否かを判定している。 When determining that "j=mky" is satisfied in the process of S322 (S322, YES), the CPU 23 determines whether "k=mkz" is satisfied (S326). That is, in the process of S326, the CPU 23 determines whether or not the loop process in which the z-coordinate is changed has been completed.

S326の処理において“k=mkz”が満たされていないと判定した場合に(S326,NO)、CPU23は、“k=k+1”の処理を実行する(S328)。すなわち、S328の処理では、変数kがインクリメントされる。S328の処理が完了すると、CPU23は、S312の処理に進む。つまり、CPU23は、隣のz座標のボクセルVXに対応する電界の3成分の計算及び吸収境界条件の適用処理を実行する。 When it is determined in the process of S326 that "k=mkz" is not satisfied (S326, NO), the CPU 23 executes the process of "k=k+1" (S328). That is, in the process of S328, the variable k is incremented. When the process of S328 is completed, the CPU 23 proceeds to the process of S312. That is, the CPU 23 executes calculation of the three components of the electric field corresponding to the next z-coordinate voxel VX and application of the absorbing boundary condition.

S326の処理において“k=mkz”が満たされていると判定した場合に(S326,YES)、CPU23は、図10の一連の処理を終了する(終了)。 When determining that "k=mkz" is satisfied in the process of S326 (S326, YES), the CPU 23 ends the series of processes in FIG. 10 (end).

なお、図10を用いて説明された処理は、計算対象のボクセルVXのx座標を固定し、y座標及びz座標を変化させて実行されている。異なるx座標の電界成分Ex、Ey及びEzの計算及び更新については、CPU23の並列処理によって計算及び更新され得る。また、磁界成分Hx、Hy及びHzのそれぞれについても、電界成分Ex、Ey及びEzと同様の流れで計算され得る。例えば、磁界成分の計算及び更新(S302)は、図10に示されたフローチャートにおいて、S318が“Hx(x,y,z)、Hy(x,y,z)、Hz(x,y,z)の計算”に置き換えられ、S319が“Hx(x,y,z)、Hy(x,y,z)、Hz(x,y,z)に対する吸収境界条件の適用”に置き換えられ、ループ処理に使用される変数の処理が適宜変更された構成を有する。 The processing described with reference to FIG. 10 is executed by fixing the x-coordinate of the voxel VX to be calculated and changing the y-coordinate and z-coordinate. Calculation and updating of the electric field components Ex, Ey and Ez of different x-coordinates can be calculated and updated by parallel processing of the CPU 23 . Further, each of the magnetic field components Hx, Hy and Hz can be calculated in the same manner as the electric field components Ex, Ey and Ez. For example, the calculation and update of the magnetic field component (S302) may be performed in the flow chart shown in FIG. )”, S319 is replaced with “Applying absorbing boundary conditions to Hx (x, y, z), Hy (x, y, z), Hz (x, y, z)”, loop processing It has a configuration in which the processing of variables used in is changed as appropriate.

<4>実施形態の効果
FDTD計算で最も時間を必要とする処理は、電磁界成分の更新と吸収境界条件の適用処理である。このため、これらの時間ステップ処理(例えばS110、S112、及びS114)は、並列化やベクトル化されることが好ましい。電磁界成分の更新と吸収境界条件の適用は、空間座標(x,y,z)の三重ループであり、これらの多重ループの処理のスレッド並列化は、解析処理を高速化させることができる。
<4> Effect of the Embodiment The process that requires the most time in the FDTD calculation is the process of updating the electromagnetic field component and the process of applying the absorbing boundary condition. Therefore, these time-step processes (eg, S110, S112, and S114) are preferably parallelized and vectorized. Updating the electromagnetic field components and applying the absorbing boundary condition are triple loops of spatial coordinates (x, y, z), and thread parallelization of the processing of these multiple loops can speed up the analysis processing.

図8を参照して説明された比較例における電磁界成分の計算及び更新方法で使用されるプログラムは、電界成分の計算と、電界成分に対する吸収境界条件の適用と、磁界成分の計算と、磁界成分に対する吸収境界条件の適用とを順に実行する。比較例の計算方法にプログラムコンパイラによる自動並列化が適用された場合、キャッシュ再利用性に欠け、十分な速度向上が見込めないおそれがある。 The program used in the method of calculating and updating the electromagnetic field components in the comparative example described with reference to FIG. and applying absorbing boundary conditions to the components. If automatic parallelization by a program compiler is applied to the calculation method of the comparative example, cache reusability may be lacking and sufficient speed improvement may not be expected.

これに対して、図10を参照して説明された実施形態における電磁界成分の計算及び更新方法で使用されるプログラムは、三重ループで記述された各成分演算のループ融合を行うように変更されている。そして、メモリの連続アクセス及び一命令分当りの計算量を増加させるように、電磁界の成分毎にループ処理が実行される。このように、実施形態に係る解析方法は、三重ループの計算を並列スレッド処理し、且つベクトル化に考慮した最適化がなされているため、並列FDTD計算を高速化させることができる。その結果、実施形態に係る解析方法は、キャッシュの再利用性の向上や、負荷バランスを改善をさせることができ、FDTD法における電磁界の計算時間を短縮させることができる。 In contrast, the program used in the electromagnetic field component calculation and update method in the embodiment described with reference to FIG. ing. Then, loop processing is executed for each component of the electromagnetic field so as to increase the continuous access of the memory and the amount of calculation per instruction. As described above, the analysis method according to the embodiment performs parallel thread processing for triple loop calculations, and is optimized in consideration of vectorization, so parallel FDTD calculations can be speeded up. As a result, the analysis method according to the embodiment can improve cache reusability and load balance, and can shorten the electromagnetic field calculation time in the FDTD method.

以下に、実施形態と比較例とのそれぞれで、同様のFDTD解析パラメータが適用して解析処理を実行した結果を示す。
(FDTD解析パラメータ)
ボクセル寸法[mm]|Δx、Δy、Δz=20mm
解析領域(x,y,z)[m]|(760,700,28)
吸収境界条件|CPML(10Layer)
解析周波数[GHz]|1.298
Tx-アンテナ(λ/2ダイポール)|偏波:垂直、設置高[m]:12.5
主記憶容量|134(334GB×400nodes)
(計算時間)
プログラム最適化前(比較例):約280時間
プログラム最適化後(実施形態):約167時間
すなわち、実施形態に係る解析装置10は、比較例よりも約4割高速に計算することができる。従って、実施形態に係る解析装置10は、比較例よりも約4割の計算コストを削減することができる。
Below, the results of performing analysis processing by applying similar FDTD analysis parameters to each of the embodiment and the comparative example are shown.
(FDTD analysis parameters)
Voxel dimensions [mm] | Δx, Δy, Δz = 20 mm
Analysis area (x, y, z) [m] | (760, 700, 28)
Absorbing boundary condition | CPML (10Layer)
Analysis frequency [GHz] | 1.298
Tx-antenna (λ/2 dipole) | Polarization: vertical, installation height [m]: 12.5
Main memory capacity | 134 (334 GB x 400 nodes)
(calculation time)
Before program optimization (comparative example): about 280 hours After program optimization (embodiment): about 167 hours That is, the analysis device 10 according to the embodiment can perform calculations about 40% faster than the comparative example. Therefore, the analysis device 10 according to the embodiment can reduce the calculation cost by about 40% compared to the comparative example.

さらに、実施形態に係る解析方法は、演算器が取り扱う数値データ型として単精度実数を利用することが好ましい。実施形態に係る解析装置10は、解析処理に単精度実数を利用することによって、キャッシュラインと演算器とのアンバランスから生じるデータ待ちを改善でき、データ転送量を増加させ、メモリの連続アクセス及び一命令文当りの計算量を増加させることができる。つまり、実施形態に係る解析方法は、単精度実数を利用したプログラムに改変されることにより、解析処理の大幅な高速化を実現することができる。 Furthermore, the analysis method according to the embodiment preferably uses single-precision real numbers as the numeric data type handled by the calculator. By using single-precision real numbers for analysis processing, the analysis device 10 according to the embodiment can improve data waiting caused by an imbalance between cache lines and arithmetic units, increase the amount of data transfer, and improve continuous memory access and It is possible to increase the amount of calculation per statement. In other words, the analysis method according to the embodiment can significantly speed up the analysis process by modifying the program using single-precision real numbers.

図11は、解析処理の処理時間の第1の評価結果を示す棒グラフである。図11は、解析処理にループ分割(比較例の解析処理)を適用し、且つ処理の自動並列化が適用された場合の計算速度の違いを示している。図11に示すように、本評価結果における速度向上比(Speed-up ratio)の基準として倍精度実数が利用された場合の計算速度を“1.0”とすると、単精度実数が利用された場合の計算速度は“1.6”となった。すなわち、単精度実数を利用した解析処理は、倍精度実数を利用した解析処理よりも1.6倍高速に計算することができる。 FIG. 11 is a bar graph showing the first evaluation result of the processing time of analysis processing. FIG. 11 shows the difference in calculation speed when loop division (comparative analysis processing) is applied to analysis processing and automatic parallelization of processing is applied. As shown in FIG. 11, assuming that the calculation speed when double-precision real numbers are used as the standard for the speed-up ratio in this evaluation result is "1.0", single-precision real numbers were used. The calculation speed in this case was "1.6". That is, the analysis processing using single-precision real numbers can be calculated 1.6 times faster than the analysis processing using double-precision real numbers.

図12は、解析処理の処理時間の第2の評価結果を示す棒グラフである。図12は、解析処理にループ分割(比較例の解析処理)又はループ融合(実施形態の解析処理)を適用し、且つ処理の自動並列化又はOMP並列化(OpenMP指示文を利用した処理の並列化)が適用された場合の計算速度の違いを示している。図12に示すように、本評価結果における速度向上比(Speed-up ratio)の基準としてループ分割且つ自動並列化が適用された場合の計算速度を“1.0”とすると、ループ分割且つOMP並列化が適用された場合の計算速度は“1.3”となり、ループ融合且つOMP並列化が適用された場合の計算速度は“1.6”となった。このように、ループ融合が適用されたプログラムに対してOMP並列化を適用した解析処理は、ループ分割且つ自動並列化を適用した解析処理よりも1.6倍高速に計算することができる。つまり、実施形態に係る解析方法は、自動並列化と比べてOMP指示文を利用した並列化が有効であり、ループ融合を利用することによって、キャッシュの再利用性を向上させることができる。 FIG. 12 is a bar graph showing the second evaluation result of the processing time of the analysis processing. FIG. 12 applies loop splitting (analysis processing of the comparative example) or loop fusion (analysis processing of the embodiment) to the analysis processing, and automatic parallelization of processing or OMP parallelization (parallelization of processing using OpenMP directives). ) is applied. As shown in FIG. 12, assuming that the calculation speed when loop division and automatic parallelization are applied is "1.0" as a standard for the speed-up ratio in this evaluation result, loop division and OMP The calculation speed was "1.3" when parallelization was applied, and the calculation speed was "1.6" when loop fusion and OMP parallelization were applied. In this way, the analysis processing in which OMP parallelization is applied to a loop fusion-applied program can be calculated 1.6 times faster than the analysis processing in which loop division and automatic parallelization are applied. That is, in the analysis method according to the embodiment, parallelization using the OMP directive is more effective than automatic parallelization, and cache reusability can be improved by using loop fusion.

<5>その他
実施形態で解析処理の説明に使用されたフローチャートは、あくまで一例である。各フローチャートは、実施形態と同様の結果が得られるのであれば、可能な範囲で処理順番が入れ替えられても良いし、その他の処理が追加されても良い。本明細書において、解析装置10は、“サーバ”、又は“処理サーバ”と呼ばれてもよい。CPU23は、“プロセッサ”と呼ばれてもよい。ROM24、RAM25、及び記憶媒体26のそれぞれは、“記憶回路”と呼ばれてもよい。
<5> Others The flowchart used to explain the analysis process in the embodiment is merely an example. In each flowchart, the order of processing may be changed within a possible range, and other processing may be added, as long as the same result as in the embodiment can be obtained. In this specification, the analysis device 10 may be called a "server" or a "processing server". The CPU 23 may also be called a "processor". Each of the ROM 24, RAM 25 and storage medium 26 may be called a "storage circuit".

実施形態で説明された解析装置10のハードウェア構成は、その他の構成であってもよい。例えば、CPU23の替わりに、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)、あるいはFPGA(field-programmable gate array)などが使用されてもよい。解析装置10が有する各機能は、一部又は全部が専用のハードウェアによって実現されてもよいし、CPU23などのプロセッサが実行するプログラムとして構成されてもよい。すなわち、解析装置10が有する各機能は、コンピュータとプログラムとを用いて実現することができ、プログラムが記憶媒体に記録されてもよいし、プログラムがネットワークを介して提供されてもよい。 The hardware configuration of the analysis device 10 described in the embodiment may be another configuration. For example, instead of the CPU 23, an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), or an FPGA (field-programmable gate array) may be used. Each function of the analysis device 10 may be partially or wholly realized by dedicated hardware, or may be configured as a program executed by a processor such as the CPU 23 . That is, each function of the analysis apparatus 10 can be realized using a computer and a program, and the program may be recorded on a storage medium or provided via a network.

なお、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は、適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。さらに、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。 It should be noted that the present invention is not limited to the above-described embodiments, and various modifications can be made in the implementation stage without departing from the scope of the invention. In addition, each embodiment may be implemented in combination as appropriate, in which case the combined effect can be obtained. Furthermore, various inventions are included in the above embodiments, and various inventions can be extracted by combinations selected from a plurality of disclosed constituent elements. For example, even if some constituent elements are deleted from all the constituent elements shown in the embodiments, if the problem can be solved and effects can be obtained, the configuration with the constituent elements deleted can be extracted as an invention.

1…波源
2…物体
10…解析装置
20…入力部
21…出力部
22…通信部
23…CPU
24…ROM
25…RAM
26…記憶媒体
27,100,102…バス
31…記憶部
32…パラメータ設定部
33…配列初期化部
34…配列データ読取部
35…計算部
310…解析空間情報記憶部
312…ボクセルモデル記憶部
350…電界成分計算部
352…電界吸収境界条件計算部
354…磁界成分計算部
356…磁界吸収境界条件計算部
DESCRIPTION OF SYMBOLS 1... Wave source 2... Object 10... Analysis apparatus 20... Input part 21... Output part 22... Communication part 23... CPU
24 ROM
25 RAM
26 storage media 27, 100, 102 bus 31 storage unit 32 parameter setting unit 33 array initialization unit 34 array data reading unit 35 calculation unit 310 analysis space information storage unit 312 voxel model storage unit 350 ... electric field component calculation section 352 ... electric field absorption boundary condition calculation section 354 ... magnetic field component calculation section 356 ... magnetic field absorption boundary condition calculation section

Claims (7)

FDTD法(Finite-Difference Time-Domain method)を用いて電磁界解析を行う解析方法であって、
解析領域に複数のボクセルを設定することと、
時間ステップの更新と、前記複数のボクセルのそれぞれを対象とした電磁界成分の計算処理とを繰り返し実行することと、を備え、
前記計算処理は、電界成分の計算と前記電界成分に対する吸収境界条件の適用とを含む第1の並列処理を含む、
解析方法。
An analysis method for performing electromagnetic field analysis using the FDTD method (Finite-Difference Time-Domain method),
setting a plurality of voxels in the analysis area;
Updating the time step and repeatedly executing the calculation process of the electromagnetic field component for each of the plurality of voxels,
wherein the computational process includes a first parallel process including computation of an electric field component and application of an absorbing boundary condition to the electric field component;
analysis method.
前記計算処理は、磁界成分の計算と前記磁界成分に対する吸収境界条件の適用とを含む第2の並列処理を含み、前記第1の並列処理と前記第2の並列処理とは、互いに異なるループ処理により実行される、
請求項1に記載の解析方法。
The calculation process includes a second parallel process including calculation of a magnetic field component and application of an absorbing boundary condition to the magnetic field component, wherein the first parallel process and the second parallel process are loop processes different from each other. executed by
The analysis method according to claim 1.
前記計算処理に、単精度実数が利用される、
請求項1又は請求項2に記載の解析方法。
A single-precision real number is used for the calculation process,
The analysis method according to claim 1 or 2.
FDTD法(Finite-Difference Time-Domain method)を用いて電磁界解析を行う解析装置であって、
解析領域に複数のボクセルを設定することと、時間ステップの更新と前記複数のボクセルのそれぞれを対象とした電磁界成分の計算処理とを繰り返し実行するプロセッサを備え、
前記計算処理は、電界成分の計算と前記電界成分に対する吸収境界条件の適用とを含む第1の並列処理を含む、
解析装置。
An analysis device that performs electromagnetic field analysis using the FDTD method (Finite-Difference Time-Domain method),
A processor that repeatedly executes setting a plurality of voxels in an analysis region, updating time steps, and calculating electromagnetic field components for each of the plurality of voxels,
the computational process includes a first parallel process that includes calculating an electric field component and applying an absorbing boundary condition to the electric field component;
analysis equipment.
前記計算処理は、磁界成分の計算と前記磁界成分に対する吸収境界条件の適用とを含む第2の並列処理を含み、前記プロセッサは、前記第1の並列処理と前記第2の並列処理とを互いに異なるループ処理により実行する、
請求項4に記載の解析装置。
The computing process includes a second parallel process including calculation of a magnetic field component and application of an absorbing boundary condition to the magnetic field component, and the processor mutually interconnects the first parallel process and the second parallel process. run through different loops,
The analysis device according to claim 4.
前記プロセッサは、前記計算処理に単精度実数を利用する、
請求項4又は請求項5に記載の解析装置。
The processor utilizes single-precision real numbers for the calculation process.
The analysis device according to claim 4 or 5.
FDTD法(Finite-Difference Time-Domain method)を用いて電磁界解析を行う解析プログラムであって、
コンピュータに、
解析領域に複数のボクセルを設定することと、
時間ステップの更新と、前記複数のボクセルのそれぞれを対象とした電磁界成分の計算処理とを繰り返し実行することと、を実行させ、
前記計算処理は、電界成分の計算と前記電界成分に対する吸収境界条件の適用とを含む第1の並列処理を含む、
解析プログラム。
An analysis program for performing electromagnetic field analysis using the FDTD method (Finite-Difference Time-Domain method),
to the computer,
setting a plurality of voxels in the analysis area;
updating the time step and repeatedly executing the calculation process of the electromagnetic field component for each of the plurality of voxels;
the computational process includes a first parallel process that includes calculating an electric field component and applying an absorbing boundary condition to the electric field component;
Analysis program.
JP2021126752A 2021-08-02 2021-08-02 Analysis method, analyzer, and analysis program Pending JP2023021711A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021126752A JP2023021711A (en) 2021-08-02 2021-08-02 Analysis method, analyzer, and analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021126752A JP2023021711A (en) 2021-08-02 2021-08-02 Analysis method, analyzer, and analysis program

Publications (1)

Publication Number Publication Date
JP2023021711A true JP2023021711A (en) 2023-02-14

Family

ID=85201485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021126752A Pending JP2023021711A (en) 2021-08-02 2021-08-02 Analysis method, analyzer, and analysis program

Country Status (1)

Country Link
JP (1) JP2023021711A (en)

Similar Documents

Publication Publication Date Title
Marques et al. Performance analysis with cache-aware roofline model in intel advisor
Zhao High order matched interface and boundary methods for the Helmholtz equation in media with arbitrarily curved interfaces
US10275547B2 (en) Method and system for assessing performance of arbitrarily large arrays
JP4984464B2 (en) Electromagnetic field simulator and electromagnetic field simulation program
Lamecki et al. An efficient framework for fast computer aided design of microwave circuits based on the higher-order 3D finite-element method
CN111931939B (en) Single-amplitude quantum computing simulation method
KR20120057274A (en) Numercial analysis method and system for electromagnetic wave using id?fdtd method
CN113779779A (en) Method, apparatus and computer-readable storage medium for optimizing a mask
Louboutin et al. Performance prediction of finite-difference solvers for different computer architectures
CN117010318B (en) Method, apparatus and medium for layout processing
KR20240137637A (en) Frequency sweep method, system and associated device for adaptive frequency point sampling
Liu et al. Parameterization for molecular Gaussian surface and a comparison study of surface mesh generation
Perepelkina et al. DiamondTorre algorithm for high-performance wave modeling
Stefanski Implementation of FDTD-compatible Green's function on heterogeneous CPU-GPU parallel processing system
EP3992834A1 (en) Computer program, training data generating method, and computing system
López-Portugués et al. Acoustic scattering solver based on single level FMM for multi-GPU systems
JP2023021711A (en) Analysis method, analyzer, and analysis program
Zhang et al. Development of stochastic isogeometric analysis (SIGA) method for uncertainty in shape
Ahmad et al. A split execution model for sptrsv
Czarniewska et al. Local mesh morphing technique for parametrized macromodels in the finite element method
CN109754449B (en) Triangularization determination method for two-dimensional grid graph
Khan et al. Design and implementation of parallel SOM model on GPGPU
JP2023021712A (en) Analysis method, analyzer, and analysis program
JP2021051467A (en) Analysis apparatus, analysis method and analysis program
Murni et al. Hypergraph partitioning implementation for parallelizing matrix-vector multiplication using CUDA GPU-based parallel computing

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20210806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20210806

A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20210810

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20220121

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230106

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20230208

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240702

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240828