fortran90 構造型
ベクトルを返り値にする関数って、どうすればいいのかわからず、調べていると構造型というものが見つかった。type 構造型名 型 :: 成分名 …end type 構造型名例えば、ベクトル2つを入力して、ベクトルの外積を返す関数は以下になる。構造型の成分は%をつけて定義する。-----ここからprogram outer_product type vector double precision :: x, y, z end type vector type(vector) :: a, b, c a%x=1.0d0 a%y=0.0d0 a%z=0.0d0 b%x=1.0d0 b%y=1.0d0 b%z=0.0d0 c = vector_product(a,b) write(*,*) ccontains function vector_product( u, v) result(w) type(vector) :: u, v, w w%x = u%y * v%z - u%z * v%y w%y = u%z * v%x - u%x * v%z w%z = u%x * v%y - u%y * v%x end functionend program outer_product-----ここまで↓参考URLhttp://www7b.biglobe.ne.jp/~fortran/education/fortran90/sec9.htmlにほんブログ村