Skip to content

KuraLab/SwarmSystemSimulator_2

Repository files navigation

SwarmSystemSimulator_2

構成

  • 一ループのシミュレーションを1つのクラスにする.
  • システム,コントローラ,ビューアはその中のメソッドとして運用する.
    • あまりにも長大になるならサブクラスとして記述.
  • 基本的にシステムを変える場合は,大本のクラスを継承して別のクラスを作る
  • 継承して使う,一種のライブラリみたいになる

要求

基本のSimulatorクラスに必要な機能は

  • パラメタの付与
  • パラメタを変えたシミュレーションの実施
  • グラフの標準設定(FontSize, LineWidth, grid on)
  • アニメーションの作成,保存
  • 図の保存

詳細

  • パラメタの既定値は各継承クラスのコンストラクタで設定
  • クラスは
    • 個々の描画
    • 描画をまとめたもの を両方含んでよい さらに
    • 初期設定
    • 実行,解析,描画,保存 の一連のプロセスすら,メソッド関数として含んでよい 継承した後であればどれだけ入れ子にするか(あるいはしないか)は書いた人が自由に設計できる.

ディレクトリ構成

- SwarmSystemSimulator2 // MATLABではここをパスに通したい
  - master              // 全シミュレータの共通部分
    - BasicSimulator.m  // 一番抽象度の高いクラス
  - tools               // 便利なのを入れておく
    - CBF.m             // 結構共通で使う人がいるかもしれないのはここ
  - Simulation1
    - Simulator1.m      // シミュレータクラス 
    - Simulation1_run.m // ↑のクラスを使ってシミュレーションを実行するファイル
    - data
      - 1103
        - path.png
        - movement.mp4
      - 1106
  - Simulation2
  - submaster
  - Simulation3
  - Simulation4

.gitignore

  • *.asv
  • data/
  • *.png
  • *.mp4
  • *.mat

基本的に共有するのはコードだけ. データは他の手段で移行させてほしい

運用方針

新規にシミュレーションを作る場合

  • githubのSwarmSystemSimulator2をクローンする
  • 親となるブランチに移動する
    • 標準ではmasterから分岐.masterフォルダしか入っていない状態になる
  • ブランチを切って作業する

既存のシミュレータを実行する場合(コードを共有する場合)

  • githubのSwarmSystemSimulator2をクローンする
  • 使うシミュレーションのブランチに移動する
  • 実行する

既存のシミュレータ(master含む)を修正する場合

  • 修正対象の親ブランチに移動する(分岐したブランチから作業すると大変なことになる.そういうのが欲しければそういうブランチを作ってほしい)
  • そこで作業して,プッシュする

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages