Archived OpenModelica forums. Posting is disabled.

Alternative forums include GitHub discussions or StackOverflow (make sure to read the Stack Overflow rules; you need to have well-formed questions)


Forgot password? | Forgot username? | Register
  • Index
  • » Users
  • » KFung
  • » Profile

Posts

Posts

I've been learning to use and build within OpenModelica since January 2019 as my full time job and have yet to make significant progress in debugging my models. I have been searching for quality tools/information on how to do so, however, most references only seem to scrape the surface of the debugging process (i.e. OpenModelica users guide).

Out of all the scholarly OpenModelica articles I have read and reviewed very few go into a real process on how a user can debug complex models.

If you have any experience/advice you would like to give feel free to leave a comment below. Thanks!

Apr-04-19 21:10:02
After reading "Tools and Methods for Analysis, Debugging, and Performance Improvements of...

Debugging within OpenModelica seems to grow harder and harder the more I learn about it and realize how little of experience I have.

Unfortunately there is little to no debugging examples in my quest to learn. I have been reading a lot of OpenModelica Debugging literature and most pieces only seems to scrape the surface on debugging. The most helpful piece I have read was "Tools and Methods for Analysis, Debugging, and Performance Improvement of Equation-Based Models" by Martin Sjolund, a very prominent figure within the Modelica Community. Unfortunately, I do not have the background/experience to be able to follow all of Dr. Sjlund's book. Even the OpenModelica users guide seems to barely iterate throughout the debugging process and the rest is to figure out on the users end.

I never know what to expect after my model successfully 1. checks and 2. flattens (instantiates). The algorithmic debugger is still a mystery to me but I really wish to learn and understand the PROCESS of debugging.

There's so many scenarios of OpenModelica where I wish I could learn with someone who's much more experienced than I am.

I'm curious as to how I can get better. I feel as though I have hit a wall in my learning progress within OpenModelica. I've been working with this software for 2.5 months, putting in ~40 hours a week designated towards OpenModelica however all the online tutorials, user manuals and web forums do not cut it.

What I really need is to hear the reasoning and inner thoughts of an experienced OpenModelica user. For instance, debugging. The algorithmic debugger is so ambiguous and hard to use. There is little to no information online on how to trouble shoot errors for a complex system. Especially when there are numerous errors to troubleshoot at once. But more importantly, I want to know the process. What other things should one consider when constructing a model in order to avoid complex debugging down the road?

If you have any suggestions on how to "get to the next level" of modeling within OpenModelica, please feel free to leave your input below. I'm just super curious as to how people like the moderators of this site, OpenModelica.forum and other places have the expertise and knowledge they do and how they got there.

I had a similar issue a while back. Your heat exchanger and gas header are probably components from different libraries, but the same medium is being declared to each component. In order to fix this, declare the correct medium according to each components respected libraries and they should work together properly.

Feb-20-19 00:00:32
Internal error Transformation Module PFPlusExt index Reduction Method Pantelides failed!

I've never seen this type of error before during my use of OpenModelica. This error was generated after trying to simulate my HRSG Power Cycle, after being able to successfully instantiate the model first. I've tried a couple different methods at trying to solve this error but no luck due to the lack of literature on the issue on the internet/Modelica website.

I'd appreciate any help or advice anyone has to give to solve this error, for it's been unsolvable for the past couple of days. Thanks!

(base class for HRSG)
Rankine-HRSG.mo
(HRSG component file)
Rankine-HRSG.mo
(main model)
Rankine-HRSG.mo

Feb-15-19 19:43:28
Variable with given value triggers and error claiming that it is not constant

I've been trying to model a Rankine Power Cycle on Modelica for a while now and keep running into a error that always stems from the use of a water pump imported from the ThermoPower Library.

I receive the error:

Code:

 [14] 11:52:20 Translation Error Variable Pump.q_single0 in package ThermoPower.Water.Pump is not constant. 

But it makes no sense because I directly input a value for the flow rate q_single on the "component parameters" interface before instantiating.

I've tried to allow the program to calculate this parameter on its own via the embedded equation within the cell which pulls values from other assigned parameters. Also, since this value needs to be "constant" I made sure that all of the other parameters being used in this equation are staying constant, which they are. No luck.

I've also tried using dummy values for this flow rate in hopes that an assigned numerical value will over ride the error of constant. No luck.

Finally, I've tried going into the Text View of the model and located the Pump associated with this error. Once there, I've tried editing the code ...

Code:

 ThermoPower.Water.Pump Pump(

    Np0 = 1,
    V = 10,
    dp0 = 0,
    hstart = 1e5,
    n0 = 150,
    n_const = 150,
    q_single(fixed = true, start = 10),
    w0 = 50,
    w_single(fixed = false),
    wstart = 50)

where I would switch fixed = true. This did not work as well.

I feel like I have tried all options at my disposal as a 1 month user of OpenModelica but none of these solutions satisfies what the program actually wants. I am also curious as to why this code error is always associated with pump models.

Please let me know what you think of the situation, I'm open to all ideas! I've attached the .mo file below for anyone curious. Thanks!
Rankine-HRSG.mo


Has anyone found any success overcoming this error for their code? I also recently ran into this error when trying to simulate a Rankine Cycle model on OpenModelica. The model generates two both

Code:

 [ThermoPower.Water: 5880:7-5880:56]: Model is structurally singular, error found sorting equations  

&

Code:

 Internal error Transformation Module PFPlusExt index Reduction Method Pantelides failed! 

errors and I'm having difficulty trouble shooting these.

Thanks in advance!

I am trying to model and replicate the "Open Brayton Power Cycle" from the OpenModelica Library and have come across an error message that makes little sense. The error message is the result of incompatibility between sourceMassflow.mo and CombustionChamber.mo, all taken from the modelica library and connected in the same fashion as the library Brayton example has been done.

The error message coming up does not make any sense to me, for both parts are compatible with one another.

Code:


[11] 14:18:40 Translation Error
[BraytonCycle_First: 49:3-50:84]: Incompatible components in connect statement: connect(sourceMassFlow1.flange, combustionChamber1.inf)
- sourceMassFlow1.flange has components {C_outflow, Xi_outflow, h_outflow, m_flow, p}
- combustionChamber1.inf has components {C_outflow, Xi_outflow, h_outflow, m_flow, p}

Both of these models clearly all use the same components within each other yet for some reason will not instantiate because of this "error". Any advice would be greatly appreciated.

Below I've attached a link to Imgur, to better represent the system I am modeling.

https://imgur.com/gallery/fVTMVvF

Hello Modelica Community,

I'm having trouble choosing components within the Modelica Library that will allow the exhaust coming out of a gas turbine to be used as an output for a Recovery Heat Steam Turbine system that will be used in series with the Brayton cycle I just modeled.

Coming out of the outlet of flange_b of the gas turbine, I have it connected to a Pipe.mo then to a SourceMassFlow.mo leading up to a RealOutput.mo

The issue with compatibility here is that the RealOutput.mo only accepts "Real" components. I'm guessing the succession of components leading up to that are not considered "Real" resulting in incompatibility.

Any suggestions on how to model this system, in order to have the exhaust coming out of the turbine act as a system output to later be used by a Recovery Heat Steam Tubine sysem AKA Rankine Cycle?


perost,


Thank you so much for spelling it out for a new user like myself! I really appreciate it.

perost,

Hey thanks for the reply and what you wrote makes a lot of sense. But you are also correct about the simulation, I really just want to verify that the declaration worked correctly when instantiating the model, simulating is besides the point.

However, the pump model I have chosen to investigate already has an annotation modifier associated with it. So would the correct code syntax look like ...

Code:


model Pump
  Modelica.Fluid.Machines.Pump pump1 annotation(
    redeclare package Medium = Modelica.Media.Water.StandardWater,
    Placement(visible = true, transformation(origin = {0, 0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));

end Pump;

OR

Code:


model Pump
  Modelica.Fluid.Machines.Pump pump1(redeclare package Medium = Modelica.Media.Water.StandardWater);
  Modelica.Fluid.Machines.Pump pump1 annotation(
    redeclare package Medium = Modelica.Media.Water.StandardWater,
    Placement(visible = true, transformation(origin = {0, 0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));
end Pump;

I'm asking because neither of these methods has been able to flatten the pump.mo model.

Let me know what you think when you get the chance and thanks again for your input. It's really appreciated.

For simple library models, like the pump or ClosedVolume models, errors will direct you to change the medium within the "interfaces" package.

Here, there can be thousands of lines of code where one might have to re-declare the medium? This I am not sure, for I cannot get the basic models from the library to instantiate.

However, using the keyboard " Ctrl + f " you are able to search through the thousands of lines of code to look for the lines

Code:

replaceable package Medium = Modelica.Media.Interfaces.PartialMedium

within the "interfaces" package of the library model to

Code:

replaceable package Medium = Modelica.Media.Water.StandardWater

in my case.

Unfortunately, this method of changing the old code to the desired one still causes errors on OpenModelica where it says "[2] 11:10:44 Translation Error
[Modelica.Fluid.Interfaces: 551:7-553:51]: Medium is partial, name lookup is not allowed in partial classes."

If anyone has any thoughts or recommendations that would be great!

I DO NOT believe it should be this complicated however I still cannot figure out the easy solution by myself.

Hey Ardpo,

I still cannot manage to figure out to declare the medium class. I think the location of my inserted code is the root of the issue. I tried taking a step back on a much more simpler model, the pump pulled from the library but still cannot manage to simulate the model due to the very common error of: : [4] 09:25:35 Translation Error
[pump: 2:5-3:112]: component pump1 contains the definition of a partial class Medium.
Please redeclare it to any package compatible with Modelica.Media.Interfaces.PartialMedium.

Here is the most logical insert of class declaration I've tried but with no success.

Code:


model pump
  Modelica.Fluid.Machines.Pump pump1 annotation(
    Placement(visible = true, transformation(origin = {-22, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));end pump;

I've always declared the media at the beginning of the model, look below.

Code:


model pump
  replaceable package Medium = Modelica.Media.Water.StandardWater
  Modelica.Fluid.Machines.Pump pump1 annotation(
    Placement(visible = true, transformation(origin = {-22, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));end pump;

Let me know what you think, thanks.

I have tried many different ways at declaring new mediums for components taken from the Modelica library and nothing seems to work. The "simple" line of code "replaceable package Medium = Modelica.Media.Water.StandardWater" never fixes the errors.

Since this was an issue on all aspects of the library I tried with just a single component; the pump. I want to keep it as simple as possible because I still cannot get the pump to simulate because of this media issue.

If someone can give me some advice on how to correctly declare the medium that would be a great help. Below is the line of code for the single pump machine.

Code:


model pump
  Modelica.Fluid.Machines.Pump pump1 annotation(
    Placement(visible = true, transformation(origin = {-22, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));end pump;

I've always declared the media at the beginning of the model, look below.

Code:


model pump
  replaceable package Medium = Modelica.Media.Water.StandardWater
  Modelica.Fluid.Machines.Pump pump1 annotation(
    Placement(visible = true, transformation(origin = {-22, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation

annotation(
    uses(Modelica(version = "3.2.2")));end pump;

However this always results in the error(s) like : [4] 09:25:35 Translation Error
[pump: 2:5-3:112]: component pump1 contains the definition of a partial class Medium.
Please redeclare it to any package compatible with Modelica.Media.Interfaces.PartialMedium.

Let me know what you think, thanks.

Hello Modelica Community,

I've recently came into new issues with declaring new types of mediums for parts taken from the Modelica Library. Most errors that occur from components taken from the Modelica Library usually pertain to

Code:

Error: component volume contains the definition of a partial class Medium.

Please redeclare it to any package compatible with Modelica.Media.Interfaces.PartialMedium.

I understand that a "simple" fix for this, is to dig into the code and use the lines

Code:

 replaceable package Medium = Modelica.Media.Interfaces.PartialMedium 

and change the respected medium to whatever you desire.

My issue pertains to the Combustion Chamber model particularly, where there are over 5000 lines of code and multiple instances of declarations of mediums needed throughout the code.

What is the best method of declaring mediums for large models with thousands of lines of code, with multiple instances of declarations needed?

Hey Guys,

I'm following an exercise verbatim and have some a few instances of the code that need some clarification. The code begins with "Within Modelica.HeatTransfer; and then it goes on to declare the file as a package. This was confusing, for when you start a new modelica class, there is no option to choose "Within" type of class. I'm not exactly sure what this command does and if one is supposed to add this to their script in the beginning just after declaring class type.

I also got a couple of errors due to lack of semicolons, but once again, I was copying the code verbatim and adding the semicolons where they want me to does not fix the code errors. So I'm kind of thinking it is ultimately linked to the improper declaration of the "Within" type of Modelica class.

Below I have copied a sample of my code I'm having issues with.

Code:


within Modelica.Thermal.HeatTransfer;
package Interfaces "Connectors and partial models"
  partial connector HeatPort "Thermal port for 1-dim. heat transfer"
    Modelica.SIunits.Temperature T "Port temperature";
    flow Modelica.SIunits.HeatFlowRate Q_flow
      "Heat flow rate (positive if flowing from outside into the component)";
  end HeatPort;

  connector HeatPort_a "Thermal port for 1-dim. heat transfer (filled rectangular icon)"
    extends HeatPort;

    annotation(...,
      Icon(coordinateSystem(preserveAspectRatio=true,
                            extent={{-100,-100},{100,100}}),
                            graphics={Rectangle(
                              extent={{-100,100},{100,-100}},
                              lineColor={191,0,0},
                              fillColor={191,0,0},
                              fillPattern=FillPattern.Solid)}));
  end HeatPort_a;

  connector HeatPort_b "Thermal port for 1-dim. heat transfer (unfilled rectangular icon)"
    extends HeatPort;

    annotation(...,
      Icon(coordinateSystem(preserveAspectRatio=true,
                            extent={{-100,-100},{100,100}}),
                            graphics={Rectangle(
                              extent={{-100,100},{100,-100}},
                              lineColor={191,0,0},
                              fillColor={255,255,255},
                              fillPattern=FillPattern.Solid)}));
  end HeatPort_b;
end Interfaces;

Here is the entire model of the Brayton Cycle pulled from Modelica's ThermoPower Library. My first error occurs in the first line pertaining to the compressor1 class.

Code:


model BraytonCycle
  ThermoPower.Gas.Compressor compressor1( MyMedium = Modelica.Media.Air.SimpleAir, Ndesign = 150, Table = ThermoPower.Choices.TurboMachinery.TableTypes.matrix, Tdes_in = 300, allowFlowReversal = false, pout(start = 100))  annotation(
    Placement(visible = true, transformation(origin = {-71, 3}, extent = {{-13, -13}, {13, 13}}, rotation = 0)));
  ThermoPower.Gas.Turbine turbine1(Ndesign = 300, Tdes_in = 500, pout(start = 1))  annotation(
    Placement(visible = true, transformation(origin = {11, 3}, extent = {{-13, -13}, {13, 13}}, rotation = 0)));
  ThermoPower.Gas.SourcePressure sourcePressure1(T = 300, allowFlowReversal = false, p0 = 100000)  annotation(
    Placement(visible = true, transformation(origin = {-103, 23}, extent = {{-9, -9}, {9, 9}}, rotation = 0)));
  ThermoPower.Gas.PressDrop pressDrop1 annotation(
    Placement(visible = true, transformation(origin = {-61, 33}, extent = {{-5, -5}, {5, 5}}, rotation = -90)));
  ThermoPower.Gas.CombustionChamber combustionChamber1(Cm = 1, S = 10, V = 10, allowFlowReversal = false, gamma = 1)  annotation(
    Placement(visible = true, transformation(origin = {-30, 50}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  ThermoPower.Gas.PressDrop pressDrop2 annotation(
    Placement(visible = true, transformation(origin = {1, 33}, extent = {{-5, -5}, {5, 5}}, rotation = -90)));
  Modelica.Mechanics.Rotational.Sensors.PowerSensor powerSensor1 annotation(
    Placement(visible = true, transformation(origin = {32, 0}, extent = {{-6, -6}, {6, 6}}, rotation = 0)));
  ThermoPower.Electrical.Generator generator1 annotation(
    Placement(visible = true, transformation(origin = {52, 0}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Blocks.Continuous.FirstOrder PowerSensor annotation(
    Placement(visible = true, transformation(origin = {45, -45}, extent = {{-9, -9}, {9, 9}}, rotation = 0)));
  Modelica.Blocks.Interfaces.RealOutput GeneratedPower annotation(
    Placement(visible = true, transformation(origin = {82, -44}, extent = {{-10, -10}, {10, 10}}, rotation = 0), iconTransformation(origin = {82, -44}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Blocks.Interfaces.RealInput FuelSource annotation(
    Placement(visible = true, transformation(origin = {-100, 52}, extent = {{-10, -10}, {10, 10}}, rotation = 0), iconTransformation(origin = {-100, 52}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Blocks.Continuous.FirstOrder GasFlowActuator(T = 4, initType = Modelica.Blocks.Types.Init.SteadyState, y_start = 500)  annotation(
    Placement(visible = true, transformation(origin = {-64, 86}, extent = {{-6, -6}, {6, 6}}, rotation = 0)));
  ThermoPower.Gas.SourceMassFlow sourceMassFlow1 annotation(
    Placement(visible = true, transformation(origin = {-46, 68}, extent = {{-6, -6}, {6, 6}}, rotation = 0)));
equation
  connect(pressDrop1.inlet, combustionChamber1.ina) annotation(
    Line(points = {{-61, 38}, {-61, 50}, {-40, 50}}, color = {159, 159, 223}));
  connect(sourceMassFlow1.flange, combustionChamber1.inf) annotation(
    Line(points = {{-40, 68}, {-30, 68}, {-30, 60}}, color = {159, 159, 223}));
  connect(combustionChamber1.out, pressDrop2.inlet) annotation(
    Line(points = {{-20, 50}, {1, 50}, {1, 38}}, color = {159, 159, 223}));
  connect(compressor1.outlet, pressDrop1.outlet) annotation(
    Line(points = {{-61, 13}, {-61, 28}}, color = {159, 159, 223}));
  connect(pressDrop2.outlet, turbine1.inlet) annotation(
    Line(points = {{1, 28}, {1, 13}}, color = {159, 159, 223}));
  connect(sourcePressure1.flange, compressor1.inlet) annotation(
    Line(points = {{-94, 23}, {-81, 23}, {-81, 13}}, color = {159, 159, 223}));
  connect(compressor1.shaft_b, turbine1.shaft_a) annotation(
    Line(points = {{-63, 3}, {3, 3}}));
  connect(turbine1.shaft_b, powerSensor1.flange_a) annotation(
    Line(points = {{19, 3}, {21, 3}, {21, 0}, {26, 0}}));
  connect(GasFlowActuator.y, sourceMassFlow1.in_w0) annotation(
    Line(points = {{-58, 86}, {-50, 86}, {-50, 72}, {-50, 72}}, color = {0, 0, 127}));
  connect(FuelSource, GasFlowActuator.u) annotation(
    Line(points = {{-100, 52}, {-80, 52}, {-80, 86}, {-71, 86}}, color = {0, 0, 127}));
  connect(PowerSensor.y, GeneratedPower) annotation(
    Line(points = {{54, -44}, {82, -44}}, color = {0, 0, 127}));
  connect(powerSensor1.power, PowerSensor.u) annotation(
    Line(points = {{28, -6}, {28, -45}, {34, -45}}, color = {0, 0, 127}));
  connect(powerSensor1.flange_b, generator1.shaft) annotation(
    Line(points = {{38, 0}, {44, 0}, {44, 0}, {44, 0}}));

annotation(
    uses(ThermoPower(version = "3.1"), Modelica(version = "3.2.2")));end BraytonCycle;

Hey Adrpo,

Thanks for the reply. Is there a specific order in which you must declare information?

However, I tried this and still received the error of " [1] 14:43:34 Translation Error
[BraytonCycle: 2:180-2:219]: Variable Modelica.Media.Air.SimpleAir not found in scope BraytonCycle. "

Update: After redeclaring my medium within the compressor1 variable, I received a new error. Cannot tell if this is a step in the right direction or not. Below I have copied an update on the compressor1 code with the new error.

model BraytonCycle
  ThermoPower.Gas.Compressor compressor1(Ndesign = 150, Table = ThermoPower.Choices.TurboMachinery.TableTypes.matrix, Tdes_in = 300, allowFlowReversal = false, pout(start = 100), MyMedium = Modelica.Media.Air.SimpleAir)  annotation(
    Placement(visible = true, transformation(origin = {-71, 3}, extent = {{-13, -13}, {13, 13}}, rotation = 0)));

[1] 14:43:34 Translation Error
[BraytonCycle: 2:180-2:219]: Variable Modelica.Media.Air.SimpleAir not found in scope BraytonCycle.

I don't really understand why this medium cannot be found "within the scope of Brayton Cycle" because I'm calling it from the Modelica Library. If anyone can shed some light on this that would be really helpful for this beginner's learning experience. Thanks!

I believe the correct redeclare would be along the lines of ... " replaceable package MyMedium = Modelica.Media.Air.SimpleAir "

But like I said, I cannot figure out where to insert this declaration in order to solve the error mentioned above. 

[2] 14:24:49 Translation Error
[BraytonCycle: 2:3-4:113]: component compressor1 contains the definition of a partial class Medium.
Please redeclare it to any package compatible with Modelica.Media.Interfaces.PartialMedium.

This is the error message that first pops up when trying to check my Brayton Cycle Example Model pulled from the Modelica Library. It is in relation with the first component in my model, the compressor. I understand that I need to call upon a new medium, standard air would suffice, but I just cannot figure out where to insert this line of code into my body of code describing my system. Below is a snippet of code where I'm supposed to redeclare the medium, I just cannot figure out where.

model BraytonCycle
  ThermoPower.Gas.Compressor compressor1(Ndesign = 150, Table = ThermoPower.Choices.TurboMachinery.TableTypes.matrix, Tdes_in = 300, allowFlowReversal = false, pout(start = 100))  annotation(
 
    Placement(visible = true, transformation(origin = {-71, 3}, extent = {{-13, -13}, {13, 13}}, rotation = 0)));

  ThermoPower.Gas.Turbine turbine1(Ndesign = 300, Tdes_in = 500, pout(start = 1))  annotation(
    Placement(visible = true, transformation(origin = {11, 3}, extent = {{-13, -13}, {13, 13}}, rotation = 0)));
  ThermoPower.Gas.SourcePressure sourcePressure1(T = 300, allowFlowReversal = false, p0 = 100000)  annotation(


Let me know what you guys think! I just cannot figure out why simulating a model pulled from the Modelica Library is giving me so much trouble. Thanks.

Jan-31-19 21:18:10
Finding the right connector in the power plant

Hi,

The snapshot you posted has an error and will not load. Try and fix this so we can troubleshoot. Cheers.

The more and more I practice using Modelica via OMNotebook or external sources, all of the practice is worked in the "Text View" of the OMEdit interface. Here, I learn and practice writing up algorithms, arrays, instances, inheritance etc. I understand that a lot of code can be reused for other purposes, which is also a huge advantage to the coding language of Modelica, but when does one use the block modeling of the "Diagram View" of the OMEdit interface? The OMNotebook rarely alludes to this portion of the software and I am struggling to find practice and importance of this side of the software.

Feel free to drop your thoughts and comments on this post to help me understand the full potential of this software. Thanks.

Hello,

I started playing with the "Brayton Cycle Plant" model system pulled from the "ThermoPower" Library from Modelica as a means of learning to eventually build my own model. However, the model pulled from the Library can only Instantiate but not Simulate. Is this normal, for I haven't made any changes to the block diagram model. When trying to simulate it gives me an error of "Failed to solve the initialization problem without homotopy method. If homotopy is available the homotopy method is used now. division by zero at time 0, (a=0.23) / (b=0), where divisor b expression is: CombustionChamber1.wcomb"

Let me know if you can give me any advice on how to simulate this model from the library! Thanks. 

Hello!

Your issue seems to have some relation to the difficulties I am experiencing as a new modelica user.

A lot of examples within the OMNotebook has you create a class to model whatever situation you're dealing with, then create more classes that are needed for further iterations. I found that you cannot "lump" in all of the classes together within the "Text View" of the OMEdit interface, but have to create different classes and keep them separate in different models located underneath the modelica libraries menu. I'd love to hear your input on this.

Also, the I believe it's more useful learning the coding back end of the software. Most of the tutorials from the OMNotebook and external sources give practice via coding, not "drag and dropping".

Hope this helps, let me know what you think. 

Being very new to Modelica, I've opted to use the OMNotebook examples to learn from. There are a few details I cannot figure out on my own, where I want to execute commands very similar to how MATLAB workspace works. After lines of conditional code there comes to the point where the OMNotebook prompts me to simulate or plot whatever example I have been working on. I can only manage to simulate or plot commands by right clicking my class under the "libraries" section of the left screen. How does one execute these commands in their lines of code, to simulate and plot, instead of running the simulation button and then toggling the plot graph menu. Thanks!

  • Index
  • » Users
  • » KFung
  • » Profile
You are here: