Wolfram SystemModeler

Quick Start

Wolfram MathCore
Mikael Forsgren
training@wolfram.com

Getting Started SystemModeler™

既存のモデルを実行する

新たにモデルを作成する

詳しく学ぶ

まとめ

既存のモデルを実行する

新たにモデルを作成する

詳しく学ぶ

Init

Needs["WSMLink`"]

WSMLink`Library`EvaluateModelicaInput@"model DCMotor\n  Modelica.Electrical.Analog.Basic.Ground G annotation(Placement(visible = true, transformation(origin = {-103.5, -60}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Electrical.Analog.Basic.Resistor R(R = 0.098) annotation(Placement(visible = true, transformation(origin = {-73.5, 10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Electrical.Analog.Sources.ConstantVoltage Vin(V = 24) annotation(Placement(visible = true, transformation(origin = {-103.5, -10}, extent = {{-10, -10}, {10, 10}}, rotation = -90)));\n  Modelica.Electrical.Analog.Basic.Inductor L(L = 0.0001) annotation(Placement(visible = true, transformation(origin = {-43.5, 10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Electrical.Analog.Basic.EMF EMF(k = 0.067) annotation(Placement(visible = true, transformation(origin = {-13.5, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Mechanics.Rotational.Components.Inertia shaft(J = 0.00155) annotation(Placement(visible = true, transformation(origin = {16.5, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Mechanics.Rotational.Components.SpringDamper springDamper(c = 5, d = 0) annotation(Placement(visible = true, transformation(origin = {50, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\n  Modelica.Mechanics.Rotational.Components.Inertia load(J = 0.001, stateSelect = StateSelect.prefer) annotation(Placement(visible = true, transformation(origin = {80, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));\nequation\n  connect(springDamper.flange_b, load.flange_a) annotation(Line(visible = true, origin = {65, -10}, points = {{-5, 0}, {5, 0}}));\n  connect(shaft.flange_b, springDamper.flange_a) annotation(Line(visible = true, origin = {33.25, -10}, points = {{-6.75, 0}, {6.75, 0}}));\n  connect(EMF.flange, shaft.flange_a) annotation(Line(visible = true, origin = {1.5, -10}, points = {{-5, 0}, {5, 0}}));\n  connect(R.n, L.p) annotation(Line(visible = true, origin = {-58.5, 10}, points = {{-5, 0}, {5, 0}}, color = {0, 0, 255}));\n  connect(L.n, EMF.p) annotation(Line(visible = true, origin = {-20.167, 6.667}, points = {{-13.333, 3.333}, {6.667, 3.333}, {6.667, -6.667}}, color = {0, 0, 255}));\n  connect(Vin.p, R.p) annotation(Line(visible = true, origin = {-96.833, 6.667}, points = {{-6.667, -6.667}, {-6.667, 3.333}, {13.333, 3.333}}, color = {0, 0, 255}));\n  connect(G.p, Vin.n) annotation(Line(visible = true, origin = {-103.5, -35}, points = {{0, -15}, {0, 15}}, color = {0, 0, 255}));\n  connect(Vin.n, EMF.n) annotation(Line(visible = true, origin = {-58.5, -28.5}, points = {{-45, 8.5}, {-45, -1.5}, {45, -1.5}, {45, 8.5}}, color = {0, 0, 255}));\n  annotation(experiment(StartTime = 0.0, StopTime = 1, NumberOfIntervals = 2000, Algorithm = \"dassl\", Tolerance = 1e-06), Diagram(coordinateSystem(extent = {{-120, -100}, {140, 100}}, preserveAspectRatio = true, initialScale = 0.1, grid = {10, 10})), Icon(coordinateSystem(extent = {{-100.0, -100.0}, {100.0, 100.0}}, preserveAspectRatio = true, initialScale = 0.1, grid = {10, 10}), graphics = {Rectangle(visible = true, lineColor = {112, 31, 0}, fillColor = {255, 85, 0}, pattern = LinePattern.None, fillPattern = FillPattern.HorizontalCylinder, lineThickness = 0, extent = {{-50.0, -75.0}, {75.0, 75.0}}), Polygon(visible = true, lineColor = {112, 31, 0}, fillColor = {183, 47, 0}, pattern = LinePattern.None, fillPattern = FillPattern.HorizontalCylinder, lineThickness = 0, points = {{-50.0, 75.0}, {-75.0, 50.0}, {-75.0, -50.0}, {-50.0, -75.0}}), Rectangle(visible = true, lineColor = {64, 64, 64}, fillColor = {192, 192, 192}, pattern = LinePattern.None, fillPattern = FillPattern.HorizontalCylinder, lineThickness = 0, extent = {{75.0, -25.0}, {100.0, 25.0}}), Polygon(visible = true, lineColor = {51, 51, 51}, fillColor = {51, 51, 51}, pattern = LinePattern.None, fillPattern = FillPattern.Solid, lineThickness = 0, points = {{-100.0, -100.0}, {-100.0, -87.23}, {-50.0, -87.23}, {0.0, 25.0}, {25.0, 25.0}, {75.0, -86.93000000000001}, {100.0, -86.93000000000001}, {100.0, -100.0}}), Ellipse(visible = true, fillColor = {192, 192, 192}, pattern = LinePattern.None, fillPattern = FillPattern.Solid, lineThickness = 0, extent = {{0.0, -12.5}, {25.0, 12.5}})}));\nend DCMotor;";