ContStruct

class ContStruct(*args)

GetFEM ContStructオブジェクト

このオブジェクトは,モデルの解の分岐のnumerical continuation(continuationの詳細については,GetFEMユーザーマニュアルを参照)で使用されるパラメータとデータを格納するために使用されます.

ContStructオブジェクトの汎用的なコンストラクタ

  • S = ContStruct(Model md, string dataname_parameter[,string dataname_init, string dataname_final, string dataname_current], scalar sc_fac[, ...]) 変数 dataname_parametermd で与えられるモデルをパラメータ化します.ベクタデータムを介してパラメータ化が行われる場合, dataname_init および dataname_final は,パラメータ化を決定するこのデータムの2つの与えられた値を格納する必要があり, dataname_current は,このデータムの実際の値を提供します. sc_fac は,continuationで使用される加重ノルムに含まれるスケール係数です.

    その他のオプション

    • 'lsolver', string SOLVER_NAME

      組み込まれた線形システムに使用するソルバーの名前(デフォルト値は 'auto' で,getfemが自分で選択できるようになっています)です.有効な値は 'superlu', 'mumps' (サポートされている場合), 'cg/ildlt', 'gmres/ilu' および 'gmres/ilut' です.

    • 'h_init', scalar HIN

      初期ステップサイズ(デフォルト値は1e-2です)

    • 'h_max', scalar HMAX

      最大ステップサイズ(デフォルト値は1e-1です)

    • 'h_min', scalar HMIN

      最小ステップサイズ(デフォルト値は1e-5です)

    • 'h_inc', scalar HINC

      ステップサイズを拡大する係数(デフォルト値は1.3です)

    • 'h_dec', scalar HDEC

      ステップサイズを減少させる係数(デフォルト値は0.5です)

    • 'max_iter', int MIT

      修正で許容される最大反復回数(デフォルト値は10です)

    • 'thr_iter', int TIT

      ステップサイズ拡大補正の繰り返し回数閾値(デフォルト値は4です)

    • 'max_res', scalar RES

      解析曲線上の新しい点の目標残差値(デフォルト値は1e-6です)

    • 'max_diff', scalar DIFF

      連続する2点の収束判定基準(デフォルト値は1e-6です)を決定します.

    • 'min_cos', scalar MCOS

      古い点と新しい点の解曲線までの接線間の角度の余弦の最小値(デフォルト値は0.9です)

    • 'max_res_solve', scalar RES_SOLVE

      解くべき線形系の目標残差値(デフォルト値は1e-8です)

    • 'singularities', int SING

      特異点(1は極限点,2は分岐点,2は特殊な分岐技術が必要な点)の検出と処理のためのツールをアクティブにします

    • 'non-smooth'

      平滑化されていない問題に特殊な方法を使用できるかどうかを判定します

    • 'delta_max', scalar DMAX

      異なる平滑部(デフォルト値は0.005です)に属する二つの拡張Jacobianの凸結合の試験関数を評価するための分割の最大サイズ

    • 'delta_min', scalar DMIN

      凸結合の試験関数を評価するための最小分割サイズ(デフォルト値は0.00012です)

    • 'thr_var', scalar TVAR

      分割をリファインするための閾値ばらつき(デフォルト値は0.02です)

    • 'nb_dir', int NDIR

      新しい片側分岐の位置(デフォルト値は40です)で新しい正接予測を検索する際の,一対の参照ベクトルの線形結合の総数

    • 'nb_span', int NSPAN

      線形結合を形成する基準ベクトルの結合の総数(デフォルト値は1です)

    • 'noisy' または 'very_noisy'

      continuationプロセス中に(残差値等の)詳細情報をどのように表示するかを決定します.

Moore_Penrose_continuation(solution, parameter, tangent_sol, tangent_par, h)

Moore-Penrose continuationの1つのステップを計算します. solutionparameter で与えられる点, tangent_soltangent_par で与えられる接線,ステップサイズ h をとります.解析曲線上の新しい点,対応する接線,次のステップのステップサイズ,および必要に応じて現在のステップサイズを返します.返されたステップサイズが0の場合,continuationは失敗しています.オプションで,検出された特異点のタイプを返します.注:最後に,新しい点をモデルに保存する必要はありません.

bifurcation_test_function()

分岐試験関数の最後の値を返し,微分可能性の異なるサブドメイン間を通過する場合は,計算されたグラフ全体を返します.

char()

ContStructの(ユニークな)文字列表現を出力します.

これは,2つの異なるContStructオブジェクト間の比較を実行するために使用します.この機能は完成予定です.

compute_tangent(solution, parameter, tangent_sol, tangent_par)

更新された接線を計算して返します.

display()

ContStructオブジェクトの概要を表示します.

init_Moore_Penrose_continuation(solution, parameter, init_dir)

Moore-Penrose continuationを初期化します. solutionparameter で指定される点での解曲線の単位接線と, continuation の初期ステップサイズを返します.パラメータを基準に計算された正接の方向は init_dir の符号によって決まります.

init_step_size()

continuationのための初期ステップサイズを返します.

max_step_size()

continuationの最大ステップサイズを返します.

min_step_size()

continuationの最小ステップサイズを返します.

non_smooth_bifurcation_test(solution1, parameter1, tangent_sol1, tangent_par1, solution2, parameter2, tangent_sol2, tangent_par2)

tangent_sol1 および tangent_par1 で指定されたタンジェントを持つ solution1 および parameter1 で指定された点と, tangent_sol2 および tangent_par2 で指定されたタンジェントを持つ solution2 および parameter2 で指定された点との間の,滑らかでない分岐点をテストします.

sing_data()

ContStructオブジェクトに格納されている特異点 (X, gamma) と,そこから派生するすべての配置済みの解分岐に接線の配列 (T_X, T_gamma) を返します.

step_size_decrement()

continuationのステップサイズの減少率を返します.

step_size_increment()

continuationのステップサイズの増分比を返します.