問題タブ [modelica]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - python/matlab/simulink/maple ユーザー向けの Modelica?
Python/MATLAB/Simulink/Maple のバックグラウンドから来た Modelica を学ぼうとしています。他の言語/環境での経験を持つ人々が Modelica を学習するためのリソースはありますか?
MATLAB のバックグラウンドのコンテキストから Python を学んだとき、 NumPy for Matlab usersに多くの助けがありました。Modelica を学習するための同様のリソースはありますか?
conditional - 条件付きコンポーネントの宣言とそれに続くif方程式
特定のコンポーネント(私の場合は流体ポート)が存在するかどうかに基づいて、わずかに異なる方程式を持つモデルを構築しようとしています。
次のようなコードは機能しません。
どうすればこれを回避できますか?
icons - Modelica-アイコンの作成
Modelica標準ライブラリの2つのコンポーネントを組み合わせたモデルのアイコンを作成したいと思います。これらの2つのコンポーネントは、Modelica.Blocks.Sources.SineとModelica.Electrical.Analog.Sources.SignalVoltageです。コードが次のようになるように、2つのコンポーネントを接続しました。
注釈はOMEditによって自動的に行われます。
今、私は次のことを達成したいと思います:私は次のようなアイコンを作成したい
- 信号電圧1のピンが含まれています
- これにより、ダブルクリックしてsine1のプロパティにアクセスできます。
私はannotation(Icon(...))およびannotation(Placement(...))コマンドについて知っていますが、signalvoltage1.pとsignalvoltage1.nをアイコンレイヤーに移動する方法がわかりません。また、OMEditを使用して簡単に描画できる長方形などをダブルクリックして、sine1のプロパティにアクセスする方法がわかりません。
前もって感謝します。
modelica - Modelica (SystemModeler) でホワイト ノイズを生成する
シミュレーションに測定ノイズを追加しようとしています。これは、たとえば Simulink で実行できますが、Modelica と SystemModeler ではより難しいようです。
これを行う方法についてのアイデアはありますか?
modelica - Dymola でサンプル関数が動作しない
Dymola で次のコードをコンパイルしようとしました。
time = 0変数はでj始まり2ます。しかし、それはで始まる必要がありj = 1ます。
誰かがこの問題について考えを持っていますか?
modelica - アルゴリズムセクションから値を抽出するには?
私は代数方程式と混合された放物線偏微分方程式を扱っており、さらにこれらすべての方程式が結合されています。オイラー法 (Dassl は遅すぎる) と大きな許容誤差 (高速シミュレーション用) を使用し、OM(1.9.1)("residualFcn[some number]") でエラーを受け取ります (両方のタイプに対して)。問題は、ソルバーが「 t 非線形システムを解きます (数学的に、システムは正しいです)。最初の質問は、OM でオイラー積分法を使用する方法の種類 (明示的または暗黙的またはクランク-ニコルソン..または...) です。だから私はそれを数値的に解決しようとしました(明示的なオイラー法(「new [N]」の下のコード内)(おそらく問題はCFL条件である可能性があります))が、問題があります(特定のサンプル時間のサンプル再構成)。質問は、特定のサンプル時間の値を再現することを指しています?! 以下のコードには、配列 "a[3]" があります。
もう 1 つ、delta(t)/(delta(x))^2 >= 0.5 (delta(t) がユーザーを定義し、方程式セクションを参照する場合、delta(x) は以下のコードのようになり、空間離散化が使用されます。方程式のセクション (古典的なフィードフォワード法) で)、数値安定性は満たされていますか? 同じ例ですが、アルゴリズムセクションですか? よろしく
コードは次のとおりです。
modelica - 変数のインクリメントがうまくいかない
変数は j = 1 で始まるようになりましたが、増分が間違っています。t = 0.5 の場合、値は 2 であり、t = 1、j = 3 などの場合... 次の画像にエラーが表示されます。
前もって感謝します。
modelica - Dymolaは等距離のタイムグリッドにフラグを立て、イベントで変数を格納します
シミュレーションを指定するためのフラグ/スクリプトの方法はありますか?
- イベントで変数を保存します。SimulationSetup\Output\Store変数をイベントで保存します。
- 等距離タイムグリッド、シミュレーション設定\出力\等距離タイムグリッドと同じ
モデルに注釈として追加できることはわかっています:
annotation experiment(__Dymola_NumberOfIntervals=501), __Dymola_experimentSetupOutput(equdistant=true, events=true));
よろしく、ジル
modelica - 1回のシミュレーションで2つのモデルを1つずつ実行するにはどうすればよいですか?
ステート チャートを介してシミュレーションで 2 つのモデルを 1 つずつ実行しようとしていました。擬似コードは次のとおりです。モデル テストには、stateA と stateB の 2 つのブロックがあります。シミュレーションの開始時に、stateA が実行されます。10 秒後、stateA が停止し、stateB が実行されます。停止点での v の値は、stateA から stateB に転送する必要があります。誰かアドバイスをくれませんか?どうもありがとう!
もう 1 つの理由は、次の単純な例を openModelica でシミュレートできないのはなぜですか?
エラー: クラス initialState がスコープ StateMachine1 に見つかりません