【解決手段】二次元直交座標系の点列P(1)、P(2)、・・・P(n)のそれぞれに対して弧長(点列の間隔)と曲率が既知であり、かつ、xy座標が未知である場合、隣接する3点が同一の円上に位置すると仮定し、幾何学的な手法(三平方の定理及び余弦定理)を用いることによって、それぞれの点列のxy座標を算出する。
【発明の概要】
【発明が解決しようとする課題】
【0005】
典型的には、流体力学の分野において、空力性能向上のため弧長をパラメータとする形状曲率制御を行う必要があるが、非特許文献1では弧長による制御ができない。
【0006】
また、非特許文献1では、x座標に対してy座標が多価関数の場合には使えない。
【0007】
以上のような事情に鑑み、本発明の目的は、離散点で表された曲線の各点の曲率及び各点間の弧長を入力とし、それに対応する座標を簡単な処理で出力することができる曲線座標生成装置及びプログラムを提供することにある。
【0008】
本発明は、このような手法を用いて、翼などの曲線を有する物体の生産方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明の一形態に係る曲線座標生成装置は、離散点で表された曲線の各点の曲率、前記各点間の弧長を入力する入力部と、前記曲率に基づき円を構成し、前記弧長に基づき前記円上の座標を算出する座標算出部と、前記座標算出部で算出された座標を出力する出力部とを具備する。
【0010】
本発明の一形態に係る曲線座標生成装置は、離散点で表された曲線の曲率、前記離散点間の弧長、前記離散点の第1の座標及び前記第1の座標の次の第2の座標を入力する入力部と、前記第1の座標、前記第2の座標及び前記第2の座標における前記曲率に基づき円を構成し、前記第2の座標から、前記第2の座標と前記第2の座標の次の第3の座標となる点との間の前記弧長だけ離れた前記円上の座標を第3の座標として算出する座標算出部と、前記座標算出部で算出された第3の座標を出力する出力部とを具備する。
【0011】
前記第1の座標は、前記離散点で表された曲線における始点である。
本発明では、第1の座標、第2の座標及び第2の座標における曲率に基づき円を構成し、第2の座標から、第2の座標と第3の座標となる点との間の弧長だけ離れた円上の座標を第3の座標として算出しているので、離散点で表された曲線の曲率及び離散点間の弧長を入力とし、それに対応する座標を簡単な処理で出力することができる。
【0012】
前記入力部は、前記離散点の終点の座標及び前記曲率の修正のための重みを入力し、前記座標算出部は、前記入力した重みに基づき仮想の各点の座標を算出し、仮想の終点の座標が前記入力した終点の座標と一致するように、前記入力した重みにパラメータを付与し、前記パラメータを付与した重みに基づき前記各点の曲率及び座標を算出する。これにより、曲率に基づいた点列座標の修正が可能であると共に、曲率修正量の重みの入力によって修正後の各点列の曲率分布の制御が可能である。
【0013】
本発明の一形態に係る曲線座標生成装置は、前記各点で曲率を指定でき、かつ、前記各点間の曲率が単調となる曲線生成法を用いて、前記出力部により出力された座標の点列を通過する曲線を生成する曲線生成部を更に具備する。
【0014】
本発明の一形態に係る曲線座標生成装置は、前記出力部により出力された座標の点列を表示する表示部と、前記表示部に表示された座標の点列における各点の曲率及び弧長を前記表示部上で可変操作する操作部とを更に具備する。
【0015】
本発明の一形態に係る曲線を有する物体を生産する方法は、離散点で表された前記曲線の各点の曲率、前記各点間の弧長を入力し、前記曲率に基づき円を構成し、前記弧長に基づき前記円上で座標を特定し、前記特定された座標に基づき前記物体の曲線を設計し、前記物体を生産する。
【0016】
本発明の一形態に係るプログラムは、離散点で表された曲線の各点の曲率、前記各点間の弧長を入力するステップと、前記曲率に基づき円を構成し、前記弧長に基づき前記円上で座標を特定するステップと、前記特定された座標を出力するステップとをコンピュータシステムに実行させる。
【発明の効果】
【0017】
本発明によれば、離散点で表された曲線の各点の曲率及び各点間の弧長を入力とし、それに対応する座標を簡単な処理で出力することができる。
【発明を実施するための形態】
【0019】
以下、図面を参照しながら、本発明の実施形態を説明する。
【0020】
図1は本発明の実施形態に係る曲線座標生成装置の構成を示すブロック図である。
【0021】
図1に示すように、本発明の一形態に係る曲線座標生成装置10は、入力部11と、座標算出部12と、出力部13と、曲線生成部14とを具備する。この曲線座標生成装置10は、典型的には、コンピュータシステムに本発明に係るプログラムを実行させることで実現することができる。
【0022】
曲線座標生成装置10は、
図2に示すように、二次元直交座標系の点列P(1)、P(2)、・・・P(n)のそれぞれに対して弧長(点列の間隔)と曲率が既知であり、かつ、xy座標が未知である場合、隣接する3点が同一の円上に位置すると仮定し、幾何学的な手法(三平方の定理及び余弦定理)を用いることによって、それぞれの点列のxy座標を算出する。ただし、P(1)とP(2)のxy座標は初期値として与える必要がある。
【0023】
図2の例では、P(2)、P(3)、P(4)が同一円C上に位置するという仮定を用い、加えてP(2)とP(3)のxy座標、P(3)P(4)の弧長S
3、P(3)の曲率R
3の情報を使って、P(4)のxy座標を求めている。同様の手順を踏むことで、点列P(5)、P(6)、・・・P(n)のxy座標を求めることができる。
【0024】
ここで、入力部11は、離散点で表された曲線の曲率R
n、離散点間の弧長S
n、離散点の第1の座標(x
n−1,y
n−1)及び第1の座標の次の第2の座標(x
n,y
n)を入力する。
【0025】
座標算出部12は、第1の座標(x
n−1,y
n−1)、第2の座標(x
n,y
n)及び第2の座標(x
n,y
n)における曲率R
nに基づき円Cを構成し、第2の座標(x
n,y
n)から、第2の座標(x
n,y
n)と第2の座標の次の第3の座標(x
n+1,y
n+1)となる点との間の弧長S
nだけ離れた円C上の座標を第3の座標(x
n+1,y
n+1)として算出する。
【0026】
出力部13は、座標算出部12で算出された第3の座標(x
n+1,y
n+1)を出力する。
【0027】
図3はこの曲線座標生成装置10による具体的な処理の流れを説明するための図である。
入力部11は、以下の値を入力する
(1)離散点における各点の曲率R
(2)離散点における各点間の弧長S
(3)初期条件として始点の座標(x
1,y
1)及び次の点の座標(x
2,y
2)
【0028】
座標算出部12は、以下の処理を実行する
(1)初期条件としての始点の座標(x
1,y
1)及び次の点の座標(x
2,y
2)をxy座標上の既知の点丸1及び点丸2として用意する(
図3(a))
(2)点丸2の曲率から点丸1及び点丸2のを通過する円Cを三平方の定理を用いて描く(
図3(b))。この円C上では第丸3の点は一意に求められていない
(3)点丸2と点丸3との間の弧長から余弦定理を用いて点丸2から弧長だけ離れた円C上の点丸3の座標(x
3,y
3)を決定する(
図3(c))。
【0029】
座標算出部12は、座標(x
2,y
2)及び次の点の座標(x
3,y
3)をxy座標上の既知の点として用意し、上記の(2)と(3)の処理を実行し、以下この処理を繰り返し、離散点で表された曲線の各点におけるxy座標を算出する。
【0030】
出力部13は、算出された各点のxy座標を出力する。
曲線生成部14は、各座標で曲率を指定でき、かつ、隣接する座標間の曲率が単調となる曲線生成法を用いて、出力部13により出力されたxy座標の点列を通過する曲線を生成して出力する。
【0031】
次に、上記座標算出部12による詳細なプロセスを数式により説明する。
図4はそのプロセスを説明するための図である。
・定義
x:x座標
y:y座標
s:弧長
k:曲率
r:曲率半径(=1/k)
【0032】
・入力
x
i−1,y
i−1:P
i-1の座標
x
i,y
i:P
iの座標
s
i:P
iとP
i+1との間の弧長
k
i:P
iの曲率(
図5に示すように、曲率k
iが正は下に凸、負は上に凸となる。)
r
i:P
iの曲率半径(k
i=1/r
i)
【0033】
・出力
x
i+1,y
i+1:P
i+1の座標
・変数
x
m,y
m:P
i−1とP
iとの間の中点P
mの座標
x
c,y
c:P
i−1とP
iを通過し半径1/k
iである円の中心P
cの座標
x
m2c,y
m2c:P
mとP
cに向かう単位ベクトルV
m2cの終点の座標
θ:三角形P
iP
i+1P
cの中心P
iにおける内角
【0034】
・関数
abs:絶対値
sign(a,b):bの符号にaを乗じた数値
acos:arccos
座標算出部12は以下のアルゴリズムを実行する
【0036】
ここで、上記のアルゴリズムにおいて、
「if abs(k
i)>0 than」は、曲率が0でない場合であり、「else」は曲率が0の場合である。
【0037】
・円曲線の点列
円曲線
x=cosθ,y=sinθ
について上記アルゴリズムにより点列を求めると以下に示す座標値が得られた。
【0039】
図6は円曲線とその点列を示す図であり、点列は厳密解と一致することが確認された。
・クロソイド曲線の点列
クロソイド曲線
【0041】
について上記アルゴリズムにより点列を求めると以下の座標値が得られた。
【0043】
図7はクロソイド曲線とその点列を示す図であり、点列は厳密解と一致することが確認された。
【0044】
次に、本発明の別の実施形態を説明する。
これまでに説明した実施形態では、始点(x
1,y
1)は指定できたが終点座標(x
n,y
n)を指定できないという課題がある。
これに対して、非特許文献1では、終点座標を所望の座標とするために、その「Figure 1.(b)」に示されるように、点列全体に所望の終点座標に基づいた修正量を加えているが、修正後の曲率分布はその意図の有無にかかわらず入力した曲率分布と異なることになる。また、文献(Lin, W. F.: 3D TRANSONIC NACELLE AND WINGLET DESIGN, AIAA 90-3064, 1990)では、その「Figure 6.」及び「Figure 7.」に示されるように、局所的に角度に基づいた修正量を加えているが、上記の非特許文献1と同様に、修正後の曲率分布はその意図の有無にかかわらず入力した曲率分布と異なることになる。
【0045】
そこで、この実施形態に係る曲線座標生成装置10は、終点座標を所望の座標に一致させるために、以下に示す曲率に基づいた点列の修正及び曲率修正量の重みの入力による修正後の曲率分布の制御を実行する。以下、
図8を参照しながら説明する。
【0046】
(入力部11)
・弧長s
iと曲率k
iに加えて、曲率修正量に関する重みw
iを入力する。
・始点座標(x
1,y
1)及び次の座標(x
2,y
2)に加えて、終点座標(x
n,y
n)を入力する。
【0047】
(座標算出部12)
・次の関数f(a)を作成する。
比例定数aを入力とする。
弧長s
iと曲率k
i(1+aw
i)とする。
[数1]に示したアルゴリズムを用いて点列座標を計算する。
計算によって得られた終点座標(xt
n,yt
n)と入力した座標(x
n,y
n)の距離を関数f(a)の出力とする。
【0048】
・f(a)=0となる比例定数a
0を求める。例えば繰り返し計算で比例定数a
0の収束値を求める。
・弧長s
iと曲率k
i(1+a
0w
i)とする。
・[数1]に示したアルゴリズムを用いて点列座標(x
i,y
i)を計算する。
・曲率k
i(1+a
0w
i)及び座標(x
i,y
i)を出力する。
【0049】
従って、この実施形態に係る曲線座標生成装置10では、曲率k
iに基づいた点列座標(x
i,y
i)の修正が可能であると共に、曲率修正量の重みw
iの入力によって修正後の各点列(x
i,y
i)の曲率分布k
i(1+a
0w
i)の制御が可能である。
【0050】
以上説明した本発明は様々な分野において有効である。典型的には、流体力学の分野(例えば空力性能向上のため形状曲率制御)、数値流体力学(例えばCFD用計算格子の点制御)、意匠設計(例えば意匠曲線(点列)を描くための曲率制御)、経路設計(例えば経路のコーナ部分曲率制御)などの分野において本発明は有効である。
【0051】
・空力性能向上のため形状曲率制御に本発明を適用した場合
翼の性能を表す揚力・抗力は圧力分布を翼形状周りで積分することで得られる。
図9に示すように、一様流に置かれた翼81は、その存在によって周辺の流線82と圧力分布83を変化させる。
【0052】
ここで、ある一本の流線82に着目したとき、翼81が存在することによって流線82は曲げられるが、
図10に示すように、流線82上を移動する流体粒子84においては遠心力85が発生すると同時にそれに釣り合う圧力差86が発生することが空気力学の流線曲率定理から知られている。流線曲率定理は、例えば「流体力学(前編)」(今井功著 裳華房発行)に詳しく記載されている。
【0053】
また、流れが翼81に付着している限り、流線82の曲率は翼81の曲率と対応することが空気力学の微少擾乱理論から知られている。微少擾乱理論は、例えば「気体力学」(Liepmann, H.W., Roshko,著 吉岡書店発行)に詳しく記載されている。
【0054】
図11は以上の説明をまとめたものである。
【0055】
ここで、翼の性能を向上させるための設計手法を考える。
これまでの設計手法は殆どが"翼の座標"に基づいた手法であったように思われる。しかしながら空気力学理論を考えたとき、圧力分布と"翼の座標"の関係性よりも、圧力分布と"翼の曲率"の関係性の方が密接と考えられる。つまり"翼の曲率"に基づいた設計手法の方が空気力学的には自然であると考えられる。
【0056】
このように曲率の重要性を示す定理が存在しているにもかかわらず、"翼の曲率"に基づいた設計手法がこれまでに少なかったか理由を考えると、その理由は、曲率制御を可能とする曲線や点列の生成技術(非特許文献1)が周知されてなかったためと考えられる。
ここで、本発明と非特許文献1に記載された技術とを比較すると、両者ともに曲率制御を可能とする点列の生成技術であり、"翼の曲率"に基づいた設計手法を可能とするための基礎技術といえる。しかしながら、非特許文献1では弧長による制御ができず、またx座標に対してy座標が多価関数の場合には使えず、普遍的ではない。これに対して、本発明は、離散点で表された曲線の各点の曲率及び各点間の弧長を入力とし、それに対応する座標を簡単な処理で出力することができ、またx座標に対してy座標が多価関数の場合には使えるので、非特許文献1に記載された技術と比べてより普遍的な手法である。
【0057】
・意匠設計に本発明を適用した場合
意匠面とは、製品の表面形状を構成する曲面であり、意匠的な意図を持って形状設計された曲面を指す用語である。意匠面形状の設計においては「光線の映り込み」、「曲がり具合の味わい」など、その意匠的な意図に曲面の曲率が深く関わる。この点については、例えば「清水保弘,意匠面創生のための曲率単調曲線生成技術,UNISYS TECHNOLOGY REVIEW vol.71, 2001.」に詳しく記載されている。
【0058】
曲率を制御することは「光線の映り込み」、「曲がり具合の味わい」を制御することに繋がり、意匠曲線を描く際の重要な課題の一つといえる。そのため、曲率制御を目的とした曲線生成技術に関する研究は散見されるが、いまだ普遍的な手法が確立されていないものと考える。一方、本発明は曲率制御を可能とする"点列"生成技術であるが、具体例で示したように普遍性の高い技術であると考える。
【0059】
本発明を用いて作成された"点列"を基にして"曲線"を描くための手法は、典型的には、以下のものがある。なお、本発明を用いることでそれぞれの点における座標、曲率が既知となるが、この時点で正接(tangent)の情報は欠けている。ただし、必要であれば両隣の点を用いて離散的に正接を求めることは可能である。
【0060】
米国特許公開公報2004−109001号は、それぞれの点における座標、正接、曲率が既知の場合に曲率単調な曲線を描くための補間技術を開示する。そして、補間技術と本発明を組み合わせることで、所望の座標を通過し、かつ所望の正接、曲率を有する曲線を描くことができる。もちろん、米国特許公開公報2004−109001号は、本明細書の開示の範囲に含まれる。
【0061】
もう一つの手法は、本発明から出力される点列の密度を十分に高くし、その点列の座標を通過するNURBS(Non−Uniform−Rational−B−Spline)曲線を描くことである。実際にCADソフトウェアの「CATIA」(Dassult社, http://www.3ds.com/JA/products−services/catia/参照)上でNURBS曲線の曲率と点列の離散曲率がほぼ一致することを確認している。後者の手法は前者の手法に比べて簡易的ではあるが、実用的であると考える。
【0062】
・CADに本発明を適用した場合
本発明は、CAD(Computer Aided Design)上で点列の離散曲率と弧長を入力して、インタラクティブに座標を求めるツールとして用いることが可能である。
【0063】
図12は本発明に係る曲線座標生成装置をインタラクティブに座標を求めるツールとして用いる場合の処理フローの一例を示している。
コンピュータシステム上で構成された曲線座標生成装置は、例えば本発明に係る処理により生成された点列を取り込む(ステップ111)と、点列の条件判定を行い(ステップ112)、点列に基づき曲線分布を画面上に表示する(ステップ113)。
【0064】
図13はその画面表示の一例を示している。
図13に示す画面上の第1のウィンドウ121上には、点列に基づき曲線分布122が表示され、第2のウィンドウ123には、曲率とx座標との関係を示すグラフ124と、曲率を変更するためのスライダー125とが表示されている。なお、弧長についても同様にウィンドウに表示し、弧長を変更するためにスライダーを使うことができる。
【0065】
曲線座標生成装置は、スライダー125などを使って曲率や弧長が変更されると(ステップ114)、取り込んだ点列の更新を行い(ステップ115)、更新された点列に基づき変更された曲線分布122を画面上に表示する(ステップ113)。この曲線座標生成装置に係るアプリケーションが終了されるまで、以上の処理を継続する(ステップ116)。
【0066】
空力・流体設計で使用される数値流体力学(CFD(Computer Fluid Dynamics))では、物体表面の格子点列間隔(弧長)(
図13参照)が計算精度に影響するが、上記のCADに本発明を適用した場合と同様の手法によってこの格子点列間隔(弧長)を制御することが可能となる。つまり、本発明に係る曲線座標生成装置を、CFDツールの入力ファイルである計算格子点列を出力する装置、更にCFDツールの出力ファイルを読み込んで、その情報を基に弧長と曲率を変更する機能を有する装置として用いることができる。
【0067】
以上説明したとおり、流体力学では、ベルヌーイの定理と並んで流線曲線の定理という基本的な定理が存在し、曲率と流れ場は密接な関係にある。加えて、数値流体力学では物体表面を離散点列で扱うことが多く、格子点列間隔(弧長)の設定は基本的な検討課題のひとつである。本発明は、流体力学と数値流体力学に関連する基本技術であり、両分野を扱う産業(航空宇宙、船舶、自動車等)で利用される可能性は高い。
【0068】
意匠の分野では、Aestheticな曲線を描くために曲率制御は重要な検討課題のひとつである。本発明は、曲線ではなくて点列を対象としているが、その代わり、比較的容易な幾何学を用いた手法で曲率制御を可能とする。そのため、意匠を扱う産業(建築、自動車等)で利用される可能性が高い。
【0069】
経路設計においても、経路のコーナーにおける曲率制御は重要な検討課題のひとつである。そのため、経路を扱う産業(インフラ、航空輸送等)で利用される可能性が高い。