コード例 #1
0
        /// <summary>
        /// 空気抵抗のある自由落下系に対して運動方程式を1ステップ解くクラスのコンストラクタ
        /// </summary>
        /// <param name="sd">保存された設定情報のオブジェクト</param>
        /// <param name="altitudeLineSeries">経過時間-高度グラフのプロット用のLineSeries</param>
        /// <param name="velocityLineSeries">経過時間-速度グラフのプロット用のLineSeries</param>
        /// <param name="dt">常微分方程式の数値解法の時間刻み(秒)</param>
        /// <param name="tintervalgraphplot">グラフプロット用の時間間隔(秒)</param>
        /// <param name="eps">常微分方程式の数値解法の許容誤差</param>
        /// <param name="m">球の質量(kg)</param>
        /// <param name="r">球の半径(m)</param>
        /// <param name="h0">初期高度(m)</param>
        /// <param name="v0">初期速度(m/s)</param>
        /// <param name="odesolver">常微分方程式の数値解法</param>
        internal FreefallSolveEom(SaveDataManage.SaveData sd, LineSeries altitudeLineSeries, LineSeries velocityLineSeries, Double dt, Double tintervalgraphplot, Double eps, Double m, Double r, Double h0, Double v0, Int32 odesolver)
        {
            this.altitudeLineSeries = altitudeLineSeries;

            this.velocityLineSeries = velocityLineSeries;

            if (sd.IsOutputToCsvFile)
            {
                Double.TryParse(sd.IntervalOfOutputToCsvFile, out Double tintervaloutputcsv);
                UnsafeNativeMethods.FreefallInit(dt, tintervalgraphplot, tintervaloutputcsv, sd.CsvFileNameFullPath, eps, m, r, h0, v0, odesolver);
            }
            else
            {
                UnsafeNativeMethods.FreefallInit(dt, tintervalgraphplot, eps, m, r, h0, v0, odesolver);
            }
        }
コード例 #2
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="sd">ファイルに保存される設定情報データのオブジェクト</param>
        internal MainWindowViewModel(SaveDataManage.SaveData sd)
        {
            this.sd = sd;

            this.IntervalOfGraphPlot = sd.IntervalOfGraphPlot;

            this.DiameterOfSphere = sd.DiameterOfSphere;

            this.InitialAltitudeOfSphere = sd.InitialAltitudeOfSphere;

            this.InitialVelocityOfSphere = sd.InitialVelocityOfSphere;

            this.MassOfSphere = sd.MassOfSphere;

            this.InitializePlotModel();
        }
コード例 #3
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="sd">保存された設定情報のオブジェクト</param>
        internal SettingWindow(SaveDataManage.SaveData sd)
        {
            this.InitializeComponent();

            this.sd = sd;
        }