JP2003248674A - Function value interpolation method, device, and program, and recording medium - Google Patents

Function value interpolation method, device, and program, and recording medium

Info

Publication number
JP2003248674A
JP2003248674A JP2002048854A JP2002048854A JP2003248674A JP 2003248674 A JP2003248674 A JP 2003248674A JP 2002048854 A JP2002048854 A JP 2002048854A JP 2002048854 A JP2002048854 A JP 2002048854A JP 2003248674 A JP2003248674 A JP 2003248674A
Authority
JP
Japan
Prior art keywords
interpolation
function value
dimensional space
calculation
calculation result
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
JP2002048854A
Other languages
Japanese (ja)
Inventor
Masanori Kaji
正典 梶
Masatoshi Usami
昌俊 宇佐美
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.)
Fujitsu FIP Corp
Original Assignee
Fujitsu FIP 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 Fujitsu FIP Corp filed Critical Fujitsu FIP Corp
Priority to JP2002048854A priority Critical patent/JP2003248674A/en
Publication of JP2003248674A publication Critical patent/JP2003248674A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a function value interpolation method, a device, and a program capable of interpolating a function value of a function defined in a three-dimensional space at high speed and to provide a recording medium. <P>SOLUTION: This function value interpolating method interpolates the value of the function mapping from a point in the three-dimensional space to a point in a one-dimensional space. This method is provided with a calculation result retaining step calculating a coefficient for interpolating a partial space of the three-dimensional space and retaining the calculated result and interpolation calculating means interpolating the function value of an arbitrary point in the three-dimensional space using the calculation result. <P>COPYRIGHT: (C)2003,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は関数値の補間に関
し、特に3次元空間から1次元空間への関数における関
数値補間方法、関数値補間装置、関数値補間プログラム
及び記録媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a function value interpolation, and more particularly to a function value interpolation method, a function value interpolation device, a function value interpolation program and a recording medium in a function from a three-dimensional space to a one-dimensional space.

【0002】[0002]

【従来の技術】コンピュータの計算処理速度は年々速く
なり、現在のパーソナルコンピュータの計算処理速度
は、10年前のスーパーコンピュータの計算処理速度に
匹敵するといわれる。しかし、コンピュータを用いて科
学技術計算を行う場合は、コンピュータの計算処理速度
の向上に伴い、コンピュータに扱わせる計算量やデータ
量も増加しており、そのためにコンピュータを用いても
時間のかかることがある。
2. Description of the Related Art The calculation processing speed of a computer is increasing year by year, and it is said that the calculation processing speed of the present personal computer is comparable to the calculation processing speed of a super computer 10 years ago. However, when performing scientific and technological calculations using a computer, the amount of calculation and the amount of data to be handled by the computer are increasing with the increase in the computational processing speed of the computer, and therefore it takes time even if the computer is used. There is.

【0003】その時間のかかる処理の例として、気体を
透過した光のスペクトルを観測して気体中の成分濃度を
求める放射伝達計算に必要な吸収係数を求める関数を計
算する処理がある。この吸収係数は、気温×気圧×波数
(波長の逆数)の空間で定義される定義域から求まる係
数であり、気圧×気温での変化は滑らかであるが、波数
方向の変化は急激である。このような場合、時間を短縮
するために、関数の定義域を離散化し、その離散化した
点での関数値を予め求めておき、離散化した点以外の点
では、予め求めていた関数値を用いて補間することによ
り、その点の関数値を求める手法がよく用いられる。
As an example of such a time-consuming process, there is a process of observing a spectrum of light transmitted through a gas and calculating a function for obtaining an absorption coefficient required for radiative transfer calculation for obtaining a component concentration in the gas. This absorption coefficient is a coefficient obtained from a domain defined by the space of air temperature × atmospheric pressure × wave number (reciprocal of wavelength), and the change in atmospheric pressure × temperature is smooth, but the change in the wave number direction is abrupt. In such a case, in order to shorten the time, the domain of the function is discretized, the function values at the discretized points are obtained in advance, and the function values previously obtained at points other than the discretized points are obtained. A method is often used in which the function value at that point is obtained by interpolation using.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、すべて
の場合に上記手法が適切とは限らない。例えば、上記関
数の定義域を、気温×気圧×波数からなる点の集合のう
ち、気圧×気温に制限した場合は、関数値の変化が滑ら
かなため、離散化した点より補間可能であるが、波数方
向の変化に対する関数値の変化は激しく、補間するため
に離散化する点の数が、コンピュータで扱うには非現実
的な大きさとなり、離散化した点からの補間が実質的に
不可能である場合がある。
However, the above method is not always appropriate in all cases. For example, if the domain of the above function is limited to atmospheric pressure x atmospheric temperature of a set of points consisting of atmospheric temperature x atmospheric pressure x wave number, since the change in the function value is smooth, it is possible to interpolate from discrete points. , The change in the function value with respect to the change in the wave number direction is large, and the number of points to be discretized for interpolation becomes unrealistic for a computer to handle, and interpolation from the discretized points is practically impossible. It may be possible.

【0005】本発明は、このような問題点に鑑み、3次
元空間で定義された関数の関数値を高速に補間する関数
値補間方法、関数値補間装置、関数値補間プログラム及
び記録媒体を提供することを目的とする。
In view of the above problems, the present invention provides a function value interpolation method, a function value interpolation device, a function value interpolation program and a recording medium for rapidly interpolating the function value of a function defined in a three-dimensional space. The purpose is to do.

【0006】[0006]

【課題を解決するための手段】請求項1に記載の発明
は、3次元空間の点から1次元空間の点へ写像する関数
の値域をコンピュータを用いて補間する関数値補間方法
であって、前記3次元空間の部分空間に対する値域を計
算し、該計算した計算結果を保持する計算結果保持段階
と、前記計算結果を用いて、前記3次元空間の任意の点
の関数値を補間する補間計算段階とを有することを特徴
とする。
According to a first aspect of the present invention, there is provided a function value interpolation method for interpolating a range of a function mapping from a point in a three-dimensional space to a point in a one-dimensional space using a computer. A calculation result holding step of calculating a value range for a subspace of the three-dimensional space and holding the calculated calculation result, and an interpolation calculation for interpolating a function value of an arbitrary point in the three-dimensional space using the calculation result And stages.

【0007】請求項1によれば、計算した結果を保持し
ておくことにより、他の任意の点に対する値を高速に補
間することが可能となる。
According to the first aspect, by holding the calculated result, it becomes possible to interpolate the values for other arbitrary points at high speed.

【0008】請求項2に記載の発明は、前記計算結果保
持段階は、前記部分空間の点に対する全ての計算結果が
計算精度に影響しない一定値以下である場合は、計算結
果を保持しないことを特徴とする。
According to a second aspect of the present invention, the calculation result holding step does not hold the calculation result when all the calculation results for the points of the subspace are equal to or less than a constant value that does not affect the calculation accuracy. Characterize.

【0009】請求項2によれば、計算結果が計算精度に
影響しない一定値以下の場合は、結果を保持しないた
め、コンピュータの資源の浪費を防ぐことができる。
According to the second aspect, when the calculation result is equal to or less than a certain value that does not affect the calculation accuracy, the result is not held, so that the waste of computer resources can be prevented.

【0010】請求項3に記載の発明は、前記計算結果保
持段階は、計算した結果を複数のファイルとして保持す
ることを特徴とする。
The invention according to claim 3 is characterized in that, in the calculation result holding step, the calculation result is held as a plurality of files.

【0011】請求項3によれば、不揮発性のファイルと
して保持することにより、再利用が可能となる。
According to the third aspect, it is possible to reuse by holding it as a non-volatile file.

【0012】請求項4に記載の発明は、前記ファイル
は、前記3次元空間内の、補間の対象となる座標軸と平
行な直線上の点に対する計算結果を、その直線単位で記
録したファイルであることを特長とする。
According to a fourth aspect of the present invention, the file is a file in which the calculation result for a point on a straight line parallel to the coordinate axis to be interpolated in the three-dimensional space is recorded in the unit of the straight line. It is characterized by

【0013】請求項4によれば、関数値が特定の座標軸
と垂直な平面方向に対しては滑らかである場合、その座
標軸方向に関する値を記録したファイルのみを保持すれ
ばよいためファイルの量を減らすことができる。
According to the fourth aspect, when the function value is smooth in the plane direction perpendicular to the specific coordinate axis, only the file in which the value relating to the coordinate axis direction is recorded needs to be held, so that the file size is reduced. Can be reduced.

【0014】請求項5に記載の発明は、前記補間計算段
階は、前記ファイルから読み込んだ結果を、他の補間計
算に再利用することを特徴とする。
According to a fifth aspect of the present invention, in the interpolation calculation step, the result read from the file is reused for another interpolation calculation.

【0015】請求項5によれば、再利用することによ
り、再び読み込む時間がかからないため、高速に処理を
行うことができる。
According to the fifth aspect, by reusing the data, it does not take time to read it again, so that the processing can be performed at high speed.

【0016】請求項6に記載の発明は、前記補間計算段
階は、前記3次元空間の点に対する補間計算が行われる
頻度により、前記3次元空間の点に関する情報を事前に
入力することを特徴とする。
According to a sixth aspect of the present invention, in the interpolation calculation step, information regarding the points in the three-dimensional space is input in advance according to the frequency of performing the interpolation calculation for the points in the three-dimensional space. To do.

【0017】請求項6によれば、頻度により事前に情報
を入力するため、頻度が多い点で入力するための時間が
かかることがないため、処理を高速に行うことができ
る。
According to the sixth aspect, since the information is input in advance according to the frequency, it does not take time to input the information at a high frequency, so that the processing can be performed at high speed.

【0018】請求項7に記載の発明は、3次元空間の点
から1次元空間の点へ写像する関数の値域をコンピュー
タを用いて補間する補間装置であって、前記3次元空間
の部分空間に対する値域を計算し、該計算した計算結果
を保持する計算結果保持手段と、前記計算結果を用い
て、前記3次元空間の任意の点の関数値を補間する補間
計算手段とを有することを特徴とする。
According to a seventh aspect of the present invention, there is provided an interpolating device for interpolating a range of a function mapping from a point in a three-dimensional space to a point in a one-dimensional space by using a computer. It has a calculation result holding means for calculating a value range and holding the calculated calculation result, and an interpolation calculation means for interpolating a function value of an arbitrary point in the three-dimensional space using the calculation result. To do.

【0019】請求項7によれば、計算した結果を保持し
ておくことにより、他の任意の点に対する値を高速に補
間することが可能となる。
According to the seventh aspect, by holding the calculated result, it becomes possible to interpolate the values for other arbitrary points at high speed.

【0020】なお、このプログラムを記録する記録媒体
は、CD−ROM、フレキシブルディスク、光磁気ディ
スク(MO)等の様に情報を光学的,電気的或いは磁気
的に記録する記録媒体、ROM、フラッシュメモリ等の
様に情報を電気的に記録する半導体メモリ等、様々なタ
イプの記録媒体を用いることができる。
The recording medium for recording this program is a recording medium such as a CD-ROM, a flexible disk or a magneto-optical disk (MO) for recording information optically, electrically or magnetically, ROM, flash. Various types of recording media such as a semiconductor memory that electrically records information such as a memory can be used.

【0021】[0021]

【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings.

【0022】本発明の実施の形態における高速補間シス
テムの構成を図1に示す。図1には、複数の分散処理計
算機10a、10b、10nと、ワークステーション1
2と、それらを接続する高速スイッチ11とが示されて
いる。ワークステーション12は、分散処理計算機10
a、10b、10nの管理を行う。また、分散処理計算
機10は、大容量のハードディスクとメモリとを搭載し
ている。
FIG. 1 shows the configuration of the high-speed interpolation system according to the embodiment of the present invention. In FIG. 1, a plurality of distributed processing computers 10a, 10b, 10n and a workstation 1 are shown.
2 and a high speed switch 11 connecting them are shown. The workstation 12 is the distributed processing computer 10.
a, 10b, 10n are managed. Further, the distributed processing computer 10 is equipped with a large capacity hard disk and a memory.

【0023】図2は、分散処理計算機10の一実施例の
構成図を示す。図2の分散処理計算機10は、それぞれ
バスBで相互に接続されているドライブ装置23と,記
録媒体24と,補助記憶装置25と,メモリ装置21
と,演算処理装置27と,インタフェース装置29とを
含むように構成される。
FIG. 2 shows a block diagram of an embodiment of the distributed processing computer 10. The distributed processing computer 10 shown in FIG. 2 has a drive device 23, a recording medium 24, an auxiliary storage device 25, and a memory device 21 which are connected to each other by a bus B.
And an arithmetic processing unit 27 and an interface unit 29.

【0024】インタフェース装置29は、分散処理計算
機10をネットワークに接続する為のインタフェースで
あり、例えばネットワークカードで構成される。
The interface device 29 is an interface for connecting the distributed processing computer 10 to a network, and is composed of, for example, a network card.

【0025】補助記憶装置25は、プログラムを格納す
ると共に、必要なファイル,データ等を格納する。メモ
リ装置21は、プログラムやデータを格納する。演算処
理装置27は、メモリ装置26に読み出され格納された
プログラムに従って、処理を実行する。
The auxiliary storage device 25 stores programs, and also stores necessary files and data. The memory device 21 stores programs and data. The arithmetic processing unit 27 executes processing according to the program read and stored in the memory unit 26.

【0026】図3は、ワークステーション12のシステ
ムの一実施例の構成図を示す。図3のコンピュ−タシス
テムは、それぞれバスBで相互に接続されている入力装
置31と,表示装置32と,ドライブ装置33と,記録
媒体34と,補助記憶装置35と,メモリ装置36と,
演算処理装置37と,インタフェース装置38とを含む
ように構成される。
FIG. 3 is a block diagram of an embodiment of the system of the workstation 12. The computer system of FIG. 3 has an input device 31, a display device 32, a drive device 33, a recording medium 34, an auxiliary storage device 35, a memory device 36, which are connected to each other by a bus B.
It is configured to include an arithmetic processing unit 37 and an interface unit 38.

【0027】また、さらに高速に処理を行う場合は、複
数の分散処理計算機10を高速スイッチで接続し、互い
に処理を行うことにより、更なる高速化が可能となる。
Further, in the case of performing the processing at a higher speed, it is possible to further speed up the processing by connecting a plurality of distributed processing computers 10 with a high-speed switch and performing the processing with each other.

【0028】次に、上記高速補間システムで計算する関
数について説明する。関数は、(x,y,z)の3次元空間
を定義域とする3次元空間から1次元空間への写像であ
る。そして、この関数は、関数値の(x,y)空間での変
化は滑らかで比較的少ない離散点から補間可能である
が、z方向の変化は激しく少ない離散点から補間できな
いものとする。
Next, the function calculated by the high speed interpolation system will be described. The function is a mapping from a three-dimensional space having a domain of the three-dimensional space of (x, y, z) to a one-dimensional space. In this function, the change of the function value in the (x, y) space is smooth and can be interpolated from relatively few discrete points, but the change in the z direction is extremely small and cannot be interpolated from discrete points.

【0029】次に、補間方法について説明する。補間方
法は、(x,y)平面での2次元3次B-splineとする。補間
値Vは以下の式で計算される。
Next, the interpolation method will be described. The interpolation method is a two-dimensional cubic B-spline in the (x, y) plane. The interpolation value V is calculated by the following formula.

【0030】[0030]

【数1】 この式を図4を用いて説明する。図4は、z軸方向にx-y
平面と平行な複数の平面上に格子点が設けられた様子を
示す図である。格子点上の黒丸は、予め計算をしておく
点であり、白丸は補間対象点(x,y)である。この予め計
算された格子点上の黒丸は、後述する数表として確保さ
れている。
[Equation 1] This equation will be described with reference to FIG. Figure 4 shows xy in the z-axis direction
It is a figure which shows a mode that the grid point was provided on several planes parallel to a plane. Black circles on the grid points are points for which calculation is performed in advance, and white circles are interpolation target points (x, y). The black circles on the grid points calculated in advance are secured as a numerical table described later.

【0031】上記数1において、添え字aは1からlま
での値をとる整数であり、添え字bは1からmまでの値
をとる整数である。そして、数列ξは、x軸方向の離
散点座標を表し、ζは、y軸方向の離散点座標を表
す。また、今の場合、点(x,y)は、図4に示されるよう
に、ξ≦x<ξa+1であり、ζ≦y<ζb+1であ
る。そしてNi(x:ξ)は離散点座標ξとの関係から計
算されるb-spline係数であり、Ni(y:ζ)は離散点座標
ζとの関係から計算されるb-spline係数である。な
お、Ni(x:ξ)は、次の式で求まる。
In Equation 1, the subscript a is an integer having a value of 1 to l, and the subscript b is an integer having a value of 1 to m. The sequence ξ a represents discrete point coordinates in the x-axis direction, and ζ b represents discrete point coordinates in the y-axis direction. Further, in this case, the point (x, y) is ξ a ≦ x <ξ a + 1 and ζ b ≦ y <ζ b + 1 as shown in FIG. And N i (x: ξ a ) is a b-spline coefficient calculated from the relationship with the discrete point coordinate ξ a, and N i (y: ζ b ) is calculated from the relationship with the discrete point coordinate ζ b It is a b-spline coefficient. Note that N i (x: ξ a ) is obtained by the following formula.

【0032】[0032]

【数2】 また、Ni(y:ζ)も同様に、上の式において、xをyに置
き換え、ξをζに置き換えることにより求めることがで
きる。
[Equation 2] Similarly, N i (y: ζ b ) can be obtained by replacing x with y and ξ with ζ in the above equation.

【0033】次に、図5を用いて、上記数表のデータ構
造を説明する。数表は、ファイルに記録されており、そ
の数表ファイルは、順編成ファイルであるk個の属性フ
ァイルと、その属性ファイルに付属し、固定レコード長
直接編成ファイルである補間係数ファイルからなる。こ
のうち、まず属性ファイルについて図6を用いて説明す
る。図6は、属性ファイルの記録項目を表した表であ
り、項目と内容と備考の欄から構成される。図6に示さ
れるように、属性ファイルには、項目として「座標範
囲」を有する。座標範囲は、この属性ファイルが数表と
して対応する3次元空間の範囲を示している。そして、
図6の表の場合、x軸の範囲は、xs≦x≦xeであり、y軸
の範囲は、ys≦y≦yeであり、z軸の範囲は、zs≦z≦ze
である。次に、項目「離散点の分割数」は、「座標範
囲」を離散点で分割した分割数を表しており、lは、上
記ξの個数であり、mは同様にζの個数を示している。
また、z軸方向は後述するように所定の間隔での分割数
であり、今の場合は、n個である。次の2つの項目「x
方向離散点座標」「y方向離散点座標」は上記ξ、ζを
表している。また、z軸方向は、所定の間隔Δzで分割さ
れている。
Next, the data structure of the above numerical table will be described with reference to FIG. The number table is recorded in a file, and the number table file is composed of k attribute files which are sequential organization files and an interpolation coefficient file which is a fixed record length direct organization file attached to the attribute files. Of these, the attribute file will be described first with reference to FIG. FIG. 6 is a table showing the record items of the attribute file, and is composed of columns of items, contents and remarks. As shown in FIG. 6, the attribute file has “coordinate range” as an item. The coordinate range indicates the range of the three-dimensional space to which this attribute file corresponds as a numerical table. And
In the case of the table of FIG. 6, the x-axis range is xs ≦ x ≦ xe, the y-axis range is ys ≦ y ≦ ye, and the z-axis range is zs ≦ z ≦ ze.
Is. Next, the item “division number of discrete points” represents the division number obtained by dividing the “coordinate range” at discrete points, 1 is the number of ξ, and m is the number of ζ. There is.
The z-axis direction is the number of divisions at a predetermined interval as will be described later, and in this case, it is n. The next two items "x
The “direction discrete point coordinates” and the “y direction discrete point coordinates” represent the above ξ and ζ. Moreover, the z-axis direction is divided at a predetermined interval Δz.

【0034】次の項目である補間係数格納アドレス情報
39は、(x,y)平面上の格子点(ξij)に対応する補
間係数c(zk)(k=1,2,..,n)の格納アドレスであり、補
間係数ファイル40を用いて求めることができる。補間
係数格納アドレス情報39は、図7に示されるように、
横軸がi番目で、縦軸がj番目、そしてkは、分割した
ファイル番号から定まるアドレスに、c(zk)を格納して
いるファイルである。また、補間係数ファイル40は、
(x,y)平面上の1つの格子点ごとに対応する補間係数が
1レコードに記録されており、そのレコードに記録され
る全ての補間係数が計算精度に影響しない一定値以下で
ある場合は、その格子点に対するレコードを作製しな
い。このようにすることにより、補間処理を実行する際
に読み込むレコードを削減することができ、補間処理の
高速化を図ることができる。
The next item, interpolation coefficient storage address information 39, is interpolation coefficient c (z k ) (k = 1,2, k ) corresponding to a grid point (ξ i , ζ j ) on the (x, y) plane. .., n), which can be obtained using the interpolation coefficient file 40. The interpolation coefficient storage address information 39, as shown in FIG.
The abscissa is i-th, the ordinate is j-th, and k is a file in which c (z k ) is stored at an address determined from the divided file numbers. The interpolation coefficient file 40 is
When the interpolation coefficient corresponding to each grid point on the (x, y) plane is recorded in one record and all the interpolation coefficients recorded in that record are equal to or less than a certain value that does not affect the calculation accuracy. , Do not make a record for that grid point. By doing so, it is possible to reduce the number of records to be read when executing the interpolation process, and it is possible to speed up the interpolation process.

【0035】これらのファイルに記録されたデータを運
用する場合は、データをメモリ上に展開する。この場合
は、さらにメモリ用補間係数格納アドレス情報領域と、
補間係数参照インデックス領域と、補間係数格納領域と
をメモリ上に設ける。これらを図8を用いて説明する。
まず、補間係数参照インデックス領域であるindx(4,4,
k)について説明するにあたり、補間係数を格納している
c(:,:)について説明する。c(i,j)は、補間係数格納領域
28であり、c(i,j)の第1添え字であるiは、z方向の番
号であり、1からレコード長までの値をとる。また、第
2添え字であるjは、補間係数格納領域の格納番号であ
る。
When operating the data recorded in these files, the data is expanded on the memory. In this case, a memory interpolation coefficient storage address information area,
An interpolation coefficient reference index area and an interpolation coefficient storage area are provided on the memory. These will be described with reference to FIG.
First of all, indx (4,4,
In describing (k), the interpolation coefficient is stored.
Explain c (:, :). c (i, j) is the interpolation coefficient storage area 28, and i, which is the first subscript of c (i, j), is a number in the z direction and takes a value from 1 to the record length. The second subscript j is the storage number of the interpolation coefficient storage area.

【0036】また、このc(i,j)は、補間対象点(x,y)を
囲む4×4の離散点に対応する補間係数を格納してい
る。そこで、補間係数参照インデックス領域indx(4,4,
k)は、c(i,j)での第2添字を格納している。また、第3
添字kはファイル番号に対応している。
Further, this c (i, j) stores interpolation coefficients corresponding to 4 × 4 discrete points surrounding the interpolation target point (x, y). Therefore, the interpolation coefficient reference index area indx (4,4,
k) stores the second subscript in c (i, j). Also, the third
The subscript k corresponds to the file number.

【0037】次に逆引用テーブルjikc(4,s)26につい
て説明する。この逆引用テーブル26は、格子番号i、
j、kからメモリ用補間係数アドレス情報ad2(i,j,k)2
4を用いて補間係数を求めるためのテーブルである。ま
た、参照カウンタを有する。この参照用カウンタは、c
(i,j)の領域をすべて使い切り、上書きする場合に用い
られるカウンタであり、この参照カウンタが正で最小で
あるところが一番古いメモリ領域となっているので、そ
の領域から再び書き込みを行う。
Next, the back reference table jikc (4, s) 26 will be described. This reverse citation table 26 has a grid number i,
Memory interpolation coefficient address information ad2 (i, j, k) 2 from j, k
4 is a table for obtaining an interpolation coefficient using 4. It also has a reference counter. This reference counter is c
This is a counter used when all of the area (i, j) is used up and overwritten. The area where the reference counter is positive and minimum is the oldest memory area, and therefore writing is performed again from that area.

【0038】次に、(xi,yi) i=1,2,..,noに対し、関数
値f(xi,yi,zj)(j=1,2,..,n,i=1,2,..,no)を求めるフ
ローチャートを、図9を用いて説明する。この計算結果
はv(lw,i)(lw=1〜n,i=1〜no)に格納される。
Next, for (x i , y i ) i = 1,2, .., no, the function value f (x i , y i , z j ) (j = 1,2, .., n , i = 1,2, .., no) will be described with reference to FIG. The calculation result is stored in v (lw, i) (lw = 1 to n, i = 1 to no).

【0039】ステップS1で、補間係数参照カウンタi
cを0とする。このカウンタは、先ほどの逆引用テーブ
ル26に用いられるカウンタである。次のステップS2
では、属性ファイルの入力と補間係数ファイルの事前入
力が行われる。これは、補間係数格納領域28の事前入
力用領域に格納される。次のステップS3で、上記数2
の計算を行う。ステップS4のkは、z方向の添え字範
囲を動くループカウンタである。そして、今の場合、ル
ープカウンタkは、lsからleまでを動く。次のステップ
S5では、そのkの動く範囲でv(i,k)に0を代入する。
次に、ステップS6で、ループカウンタの正規化が行わ
れる。次のステップS7で、上述したメモリ用補間係数
アドレス情報が正であれば、補間係数が格納されている
ので、ステップS9へ進む。ステップS9では、メモリ
用補間係数アドレス情報が格納している値を変数ipに代
入する。
In step S1, the interpolation coefficient reference counter i
Let c be 0. This counter is a counter used in the above-mentioned back-citation table 26. Next step S2
Then, the attribute file is input and the interpolation coefficient file is input in advance. This is stored in the pre-input area of the interpolation coefficient storage area 28. In the next step S3, the above equation 2
Calculate. K in step S4 is a loop counter that moves in the subscript range in the z direction. And in this case, the loop counter k moves from ls to le. In the next step S5, 0 is substituted for v (i, k) within the moving range of k.
Next, in step S6, the loop counter is normalized. In the next step S7, if the memory interpolation coefficient address information described above is positive, the interpolation coefficient has been stored, so the flow proceeds to step S9. In step S9, the value stored in the memory interpolation coefficient address information is substituted into the variable ip.

【0040】ステップS7の分岐処理に戻り、メモリ用
補間係数アドレス情報が0以下であれば、新たに情報を
格納するために、補間係数格納領域の空き領域、あるい
は上書き領域を検索する処理がステップS8で行われ
る。この処理で、先ほどの参照カウンタが用いられる。
このステップS8では、逆引用テーブル26の4番目で
ある参照カウンタが0以上で、かつ、ipが1から16の
間で最小となるipを検索する処理が行われる。そして、
ipが検索されると、まず補間係数参照カウンタicが増
分される。そして、逆引用テーブル26のx,y,zに対応
するそれぞれ格子番号が格納され、メモリ用補間係数ア
ドレス情報24にipが代入される。次のステップS10
で、補間係数格納領域へ入力され、そのレコード番号が
補間係数格納アドレス情報に入力される。次のステップ
S12で、補間係数参照インデックス領域にipが代入さ
れる。そして、ステップS13でループカウンタixが増
分され、その値がa+2以下であれば再びステップS6の
処理を行う。a+2より大きければ、ステップS15でル
ープカウンタiyが増分され、その値がb+2以下であれば
再びステップS6の処理を行う。b+2より大きければ、
次の図10のステップS17とステップS18でix2,iy
2に1が代入されループカウンタの初期化が行われる。
そしてステップS19では、ステップS20の計算回数
をカウントするループカウンタlにlsが代入される。
ステップS20で、主目的である関数値の計算が行われ
る。次のステップS21は、ループカウンタlが増分さ
れ、その値は次のステップS22でleと比較される。
lがle以下であれば、ステップS20の処理が再び行
われる。lがleより大きければ次のステップS23で
ループカウンタiy2が増分され、ステップS24でiy2と
4との比較が行われる。iy2が4以下であれば、ステッ
プS19の処理が再び行われる。iy2が4より大きけれ
ば、次のステップS25でix2の増分が行われる。次の
ステップS26でix2と4との比較が行われる。ix2が4
以下であれば、ステップS18の処理が再び行われる。
ix2が4より大きければ、次のステップS27でループ
カウンタkの増分が行われる。kがle以下であれば、図
9のステップS5の処理が再び行われる。kがleより
大きければ、次のステップS29でループカウンタiの
増分が行われる。次のステップS30では、iが補間対
象点の個数以下であれば、再び図7のステップS4の処
理へ進み、iが補間対象点の個数より大きければすべて
の補間対象点の個数についての計算が終了したことにな
る。
Returning to the branching process of step S7, if the memory interpolating coefficient address information is 0 or less, the step of retrieving a free area or an overwriting area of the interpolation coefficient storing area to newly store the information is a step. It is performed in S8. In this process, the reference counter mentioned earlier is used.
In this step S8, a process of searching for the ip having the fourth reference counter in the reverse citation table 26 that is 0 or more and has the smallest ip between 1 and 16 is performed. And
When ip is searched, the interpolation coefficient reference counter ic is first incremented. Then, the lattice numbers corresponding to x, y, and z of the reverse citation table 26 are stored, and ip is substituted in the memory interpolation coefficient address information 24. Next step S10
Then, it is input to the interpolation coefficient storage area, and its record number is input to the interpolation coefficient storage address information. In the next step S12, ip is assigned to the interpolation coefficient reference index area. Then, in step S13, the loop counter ix is incremented, and if the value is a + 2 or less, the process of step S6 is performed again. If it is larger than a + 2, the loop counter iy is incremented in step S15, and if the value is less than b + 2, the process of step S6 is performed again. If it is larger than b + 2,
In the next step S17 and step S18 of FIG. 10, ix2, iy
1 is substituted for 2 and the loop counter is initialized.
Then, in step S19, ls is substituted into the loop counter l that counts the number of calculations in step S20.
In step S20, the function value, which is the main purpose, is calculated. In the next step S21, the loop counter 1 is incremented and its value is compared with le in the next step S22.
If l is less than or equal to le, the process of step S20 is performed again. If 1 is larger than le, the loop counter iy2 is incremented in the next step S23, and iy2 and 4 are compared in step S24. If iy2 is 4 or less, the process of step S19 is performed again. If iy2 is larger than 4, ix2 is incremented in the next step S25. In the next step S26, ix2 and ix are compared. ix2 is 4
If the following is true, the process of step S18 is performed again.
If ix2 is larger than 4, the loop counter k is incremented in the next step S27. If k is less than or equal to le, the process of step S5 of FIG. 9 is performed again. If k is larger than le, the loop counter i is incremented in the next step S29. In the next step S30, if i is less than or equal to the number of interpolation target points, the process proceeds to step S4 of FIG. 7 again, and if i is greater than the number of interpolation target points, calculation is performed for all the interpolation target points. It's finished.

【0041】[0041]

【発明の効果】以上説明したように、3次元空間で定義
された関数の関数値を高速に補間する関数値補間方法、
関数値補間装置を提供することができる。
As described above, the function value interpolation method for rapidly interpolating the function value of the function defined in the three-dimensional space,
A function value interpolating device can be provided.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施の形態における高速補間システム
の全体構成図である。
FIG. 1 is an overall configuration diagram of a high-speed interpolation system according to an embodiment of the present invention.

【図2】分散処理計算機のハードウェアブロック図であ
る。
FIG. 2 is a hardware block diagram of a distributed processing computer.

【図3】ワークステーションのハードウェアブロック図
である。
FIG. 3 is a hardware block diagram of a workstation.

【図4】数表登録点と補間対象点を示す図である。FIG. 4 is a diagram showing a number table registration point and an interpolation target point.

【図5】数表ファイル構成を示す図である。FIG. 5 is a diagram showing a structure of a number table file.

【図6】数表ファイル構成の内容を示す図である。FIG. 6 is a diagram showing the contents of a number table file structure.

【図7】補間係数格納アドレス情報と補間係数ファイル
の関係を示す図である。
FIG. 7 is a diagram showing a relationship between interpolation coefficient storage address information and an interpolation coefficient file.

【図8】メモリーデータ構造を示す図である。FIG. 8 is a diagram showing a memory data structure.

【図9】高速補間手順を示すフローチャート(その1)
である。
FIG. 9 is a flowchart showing a high-speed interpolation procedure (No. 1)
Is.

【図10】高速補間手順を示すフローチャート(その
2)である。
FIG. 10 is a flowchart (part 2) showing the high-speed interpolation procedure.

【符号の説明】[Explanation of symbols]

10a、10b、10n…分散処理装置 11…高速スイッチ 12…ワークステーション 21…メモリ装置 22…補間係数参照インデックス領域 23…ドライブ装置 24…メモリ用補間係数アドレス情報 25…補助記憶装置 26…逆引用テーブル 27…演算処理装置 28…補間係数格納領域 29…インタフェース装置 31…入力装置 32…表示装置 33…ドライブ装置 35…補助記憶装置 36…メモリ装置 37…演算処理装置 38…インタフェース装置 39…補間係数格納アドレス情報 40…補間係数ファイル 10a, 10b, 10n ... Distributed processing device 11 ... High-speed switch 12 ... workstation 21 ... Memory device 22 ... Interpolation coefficient reference index area 23 ... Drive device 24 ... Memory interpolation coefficient address information 25 ... Auxiliary storage device 26 ... Backquote table 27 ... Arithmetic processing device 28 ... Interpolation coefficient storage area 29 ... Interface device 31 ... Input device 32 ... Display device 33 ... Drive device 35 ... Auxiliary storage device 36 ... Memory device 37 ... Arithmetic processing device 38 ... Interface device 39 ... Interpolation coefficient storage address information 40 ... Interpolation coefficient file

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 3次元空間の点から1次元空間の点へ写
像する関数の値をコンピュータを用いて補間する関数値
補間方法であって、 前記3次元空間の部分空間に対して補間するための係数
を計算し、該計算した計算結果を保持する計算結果保持
段階と、 前記計算結果を用いて、前記3次元空間の任意の点の関
数値を補間する補間計算段階とを有することを特徴とす
る関数値補間方法。
1. A function value interpolation method for interpolating a value of a function mapping from a point of a three-dimensional space to a point of a one-dimensional space by using a computer, for interpolating a subspace of the three-dimensional space. And a calculation result holding step of holding the calculated calculation result, and an interpolation calculation step of interpolating a function value of an arbitrary point in the three-dimensional space using the calculation result. Function value interpolation method.
【請求項2】 前記計算結果保持段階は、前記部分空間
の点に対する全ての計算結果が計算精度に影響しない一
定値以下である場合は、計算結果を保持しないことを特
徴とする請求項1に記載の関数値補間方法。
2. The calculation result holding step does not hold the calculation result when all the calculation results for the points of the subspace are equal to or less than a constant value that does not affect the calculation accuracy. Function value interpolation method described.
【請求項3】 前記計算結果保持段階は、計算した結果
を複数のファイルとして保持することを特徴とする請求
項1または2に記載の関数値補間方法。
3. The function value interpolation method according to claim 1, wherein the calculation result holding step holds the calculation results as a plurality of files.
【請求項4】 前記ファイルは、前記3次元空間内の、
補間の対象となる座標軸と平行な直線上の点に対する計
算結果を、その直線単位で記録したファイルであること
を特長とする請求項1に記載の関数値補間方法。
4. The file is in the three-dimensional space,
2. The function value interpolation method according to claim 1, wherein the file is a file in which calculation results for points on a straight line parallel to the coordinate axis to be interpolated are recorded in units of the straight lines.
【請求項5】 前記補間計算段階は、前記ファイルから
読み込んだ結果を、他の補間計算に再利用することを特
徴とする請求項3記載の関数値補間方法。
5. The function value interpolation method according to claim 3, wherein in the interpolation calculation step, a result read from the file is reused for another interpolation calculation.
【請求項6】 前記補間計算段階は、前記3次元空間の
点に対する補間計算が行われる頻度により、前記3次元
空間の点に関する情報を事前に入力することを特徴とす
る請求項1に記載の関数値補間方法。
6. The method according to claim 1, wherein the interpolation calculation step inputs in advance information about the points in the three-dimensional space according to the frequency of performing the interpolation calculation for the points in the three-dimensional space. Function value interpolation method.
【請求項7】 3次元空間の点から1次元空間の点へ写
像する関数の値をコンピュータを用いて補間する関数値
補間装置であって、 前記3次元空間の部分空間に対して補間するための係数
を計算し、該計算した計算結果を保持する計算結果保持
手段と、 前記計算結果を用いて、前記3次元空間の任意の点の関
数値を補間する補間計算手段とを有することを特徴とす
る関数値補間装置
7. A function value interpolation device for interpolating a value of a function mapping from a point in a three-dimensional space to a point in a one-dimensional space by using a computer, for interpolating a subspace of the three-dimensional space. And a calculation result holding unit that holds the calculated calculation result, and an interpolation calculation unit that interpolates a function value at an arbitrary point in the three-dimensional space using the calculation result. Function value interpolator
【請求項8】コンピュータに、 3次元空間の部分空間に対して補間するための係数を計
算し、該計算した計算結果を保持する計算結果保持手順
と、 前記計算結果を用いて、前記3次元空間の任意の点の関
数値を補間する補間計算手順とを実行させるための関数
値補間プログラム。
8. A calculation result holding procedure for causing a computer to calculate a coefficient for interpolating a subspace of a three-dimensional space, and holding the calculated calculation result; A function value interpolation program for executing an interpolation calculation procedure for interpolating a function value at an arbitrary point in space.
【請求項9】コンピュータに、 3次元空間の部分空間に対して補間するための係数を計
算し、該計算した計算結果を保持する計算結果保持手順
と、 前記計算結果を用いて、前記3次元空間の任意の点の関
数値を補間する補間計算手順とを実行させるための関数
値補間プログラムを記録したコンピュータ読み取り可能
な記録媒体。
9. A calculation result holding procedure for causing a computer to calculate a coefficient for interpolating a subspace of the three-dimensional space and holding the calculated calculation result, and using the calculation result, the three-dimensional A computer-readable recording medium recording a function value interpolation program for executing an interpolation calculation procedure for interpolating a function value at an arbitrary point in space.
JP2002048854A 2002-02-25 2002-02-25 Function value interpolation method, device, and program, and recording medium Pending JP2003248674A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002048854A JP2003248674A (en) 2002-02-25 2002-02-25 Function value interpolation method, device, and program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002048854A JP2003248674A (en) 2002-02-25 2002-02-25 Function value interpolation method, device, and program, and recording medium

Publications (1)

Publication Number Publication Date
JP2003248674A true JP2003248674A (en) 2003-09-05

Family

ID=28661516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002048854A Pending JP2003248674A (en) 2002-02-25 2002-02-25 Function value interpolation method, device, and program, and recording medium

Country Status (1)

Country Link
JP (1) JP2003248674A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285667A (en) * 2005-03-31 2006-10-19 Fujitsu Fip Corp Fast interpolation of absorption coefficient in radiative transfer calculation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285667A (en) * 2005-03-31 2006-10-19 Fujitsu Fip Corp Fast interpolation of absorption coefficient in radiative transfer calculation

Similar Documents

Publication Publication Date Title
JP4398455B2 (en) Route search method, program and system
US8315843B2 (en) Multi-objective optimal design support device, method and program storage medium
JP7049807B2 (en) Database query based on parametric view functions
US20220019183A1 (en) Quadratic program solver for mpc using variable ordering
CN108470364A (en) A kind of curve-fitting method and device
US20010043209A1 (en) Three-dimensional model generation system, three-dimensional model generation method, and recording medium storing a three-dimensional model generation program
Shen et al. Implicitizing rational tensor product surfaces using the resultant of three moving planes
Ma et al. 3D CBL: An efficient algorithm for general 3D packing problems
JP2003248674A (en) Function value interpolation method, device, and program, and recording medium
Schumaker Solving elliptic PDE’s on domains with curved boundaries with an immersed penalized boundary method
Potter et al. Ordered line integral methods for solving the eikonal equation
CN110211642B (en) CALPHAD free energy extraction method and device based on phase field method
Nucha et al. Computing contour trees for 2d piecewise polynomial functions
Zhuang et al. Integration of subdivision method into boundary element analysis
JP2016103089A (en) Information processing device, signal processing method, and program
JP2009169617A (en) Production capability planning support system, method and program
Lu et al. Subdivision surface-based finish machining
CN107122358A (en) Mix querying method and equipment
Ghasemi et al. Massively parallel curved spectral/finite element mesh generation of industrial CAD geometries in two and three dimensions
Den Ouden et al. Application of the level-set method to a mixed-mode driven Stefan problem in 2 and 3
JP5482175B2 (en) Boundary particle search system, boundary particle search device, control method, and program
CN104252486B (en) A kind of method and device of data processing
US7076516B2 (en) Efficient method of identifying non-solution or non-optimal regions of the domain of a function
JP2006172134A (en) Information processor and information processing method
JP4479364B2 (en) 3D surface shape model creation device, 3D surface shape model creation method, and 3D surface shape model creation program