I'm completely new to Modelica, and so I may not have a complete handle on the subject at this point. I'm trying to use the ThermpoPower 2.1 library, but it doesn't run on the OpenModelica software I have. I did some googling and my search says the library is compatible with Modelica 2.2.
Well I have OpenModelica 1.9 which is the latest version! I assume Modelica and openmodelica are two different softwares. So I looked up Modelica 2.2 to see if I can find it and download it but I was unsuccessful. Can anyone help me here?
Thanks everyone!
OpenModelica partially supports ThermoPower 3.1:
https://test.openmodelica.org/libraries/trend.html
I suggest you get the latest nightly-build which includes ThermoPower 3.1:
https://build.openmodelica.org/omc/builds/windows/nightly-builds/
Related
Greeting Everyone, I am a new one here.
I'm a brand new Modelica user. I'm trying to learn the language with OpenModelica. I'd like to use OpenHydraulics which is in github link in OpenModelica (specifically in the OMEdit Connection Editor).
I downloaded OpenModelica v1.19.2 and Modelica Standard Lib v3.2 to browse and run the library OpenHydraulics v1.0.1. However, when I open the Excavator example and try to Instantiate or Simulate the model I get many errors of the form:
[OpenHydraulics.Basic.VariableRestriction: 51:3-54:64]: Function ReynoldsNumber_m_flow not found in scope VariableRestriction.
Could you help me with this problem?
Thanks in advance.
there are a couple of things you need to take into consideration:
The current version of OpenHydraulics is still the original release from almost 10 years ago.
The library was developed using Dymola which at the time also supported a couple of non-standard Modelica, Dymola-specific constructs that other tools struggle to work with.
The example you are trying to run is the most complex one utilizing almost all of the power of the library and hence has quite a high degree of complexity.
Taking all this together means that OpenModelica is bound to struggle with that example. But all is not lost. If you actually look at the more simple circuit examples (under Circuit) you'll find that they work just fine. And depending on your application area they might already demonstrate a usage that will fit your needs.
I hope this helps.
Does anyone have experience converting Modelica 3.x files to the new 4.0 library standard? There is a link to a script, yet I am not sure how to apply it.
https://github.com/modelica/ModelicaStandardLibrary/blob/master/Modelica/Resources/Scripts/Conversion/ConvertModelica_from_3.2.3_to_4.0.0.mos
I am using Wolfram System Modeller 12.1 on a Mac, yet if needs must, can use OMEdit on either Mac or W10.
Any help to overcome my ignorance would be great.
Thanks for the help.
As far as I understand from discussion with developers conversion scripts aren't supported yet in Wolfram System Modeler.
I haven't heard as much about that topic from OMEdit, but the status seems similar based on https://github.com/OpenModelica/OpenModelica/issues/5297
The MSL 4.0.0 was even delayed a bit to give tools a bit of extra time to implement this feature. (That also allowed the scripts to be checked in additional ways with Dymola.)
Dymola 2019FD01 comes with MSL 3.2.2 by default,
and Dymola 2020 comes with MSL 3.2.3 by default.
If I open a library with annotation(uses(Modelica(version="3.2.3"))); in Dymola 2019FD01 the following popup is displayed, suggesting to use the found old version:
On the other hand, if I open a library with annotation(uses(Modelica(version="3.2.2"))); in Dymola 2020 the following popup is displayed, suggesting to convert:
In my opinion, the correct way to solve this would be to make MSL 3.2.3 available in Dymola 2019FD01. Any comments on this assumption?
Additionally, new Dymola versions could include old MSL version(s), either by default, as an installation option, or the users adds it manually.
As I happen to have both Dymola versions installed, can I just copy the MSL folders between the following two directories?
C:\Program Files\Dymola 2019 FD01\Modelica\Library
C:\Program Files\Dymola 2020\Modelica\Library
Could I also use the MSL as tagged & released on github or are there any changes?
Is there a better (official, documented) way how to handle this?
Is there a reason why old MSL versions are not included in the newest Dymola?
How far back can I go, e.g. would this even work with Dymola 7.4? And with MSL 3.2.1? Obviously the tool has to support the language elements used in the MSL release.
This question is closely related to Update Modelica standard Library in Dymola in Linux
which did not receive an answer, and also related to Modelica libraries use different MSL version which did receive an answer with a workaround that might not be sufficient for all cases.
In my opinion, the correct way to solve this would be to make MSL 3.2.3 available in Dymola 2019FD01. Any comments on this assumption?
Older tools might not support newer library features, see https://github.com/modelica/ModelicaStandardLibrary/issues/2091#issuecomment-272687901 for one recent example I remember. Or take the Modelica synchronous language features for another example.
Could I also use the MSL as tagged & released on github or are there any changes?
The ModelicaServices from the GitHub released MSL are just placeholders and need to be replaced by the tool-specific ModelicaServices one.
The C-Sources of the ModelicaStandardTables etc. from the GitHub released MSL are probably not used, but the tool-distributed will be used.
Is there a better (official, documented) way how to handle this?
Not yet. See https://github.com/modelica/ModelicaSpecification/issues/1023 or https://github.com/modelica/ModelicaSpecification/issues/556 for the corresponding Modelica specification issues.
In Dymola 2020 (and later) there is another way, which even ensures that the MSL-version specific C-sources are used.
Set the global flag Advanced.PlaceDymolaSourceFirst=2
Ensure that you have compiled the C-sources in MSL with the correct compiler.
Possibly set the version as default in Edit > Options Versions tab.
Do NOT install ModelicaServices from GitHub.
This is documented in the Dymola User's Manual Volume 1; section 6.1.5
Additional Setup>Working with a Modelica version that is newer than the one in the distribution, page 909-910 in the Dymola 2020 version. (I just didn't find it earlier.)
I am using iTextSharp version 4.1.2 and cannot update to newer version because iText changed
their licence agreement.
I am very satisfied with this version and it's working fine for me.
I can't find anywhere how to produce pie or bar or columns graphs and charts
with that version and looks like all documentation over the internet been removed.
If you are using older version and by the chance you have documentation can you please share
or point me to the source, or explain how?
iText doesn't have built-in support for charts or graphs. Instead you are encouraged to use a 3rd-party library to generate these and then add them as either graphics or PDFs.
Another option as outlined in this post is to use the iTextSharpExtensions. Please note that although it has the word "iText" in it is in no way endorsed by the makers of iText.
Also, as a quick side note, please read FAQ, specifically the "Why shouldn't I use iText 2.x (or iTextSharp 4.x)?" explaining some of the myths of the license of the version you are using.
I was reading this article:
http://www.java.com/en/download/faq/deployment_toolkit.xml
and I get confused about the purpose and use of the DT Plug-in and the deployJava.js.
I always believe that the Deployment Toolkit is the set of functions of the deployJava.js file (like this link says: http://blogs.oracle.com/thejavatutorials/entry/deployment_toolkit_101) but according to the article there are two parts of the Deployment Toolkit: the Plug-in and the interface for the developer.
I'm asking about all of this because the deployJava.js fails to detect the appropriate version of Java in some of the machines of our users and I was wondering if the DT Plug-in could help us improve the detection, but I don't know how exactly it detects the Java version and when it does it or how can I use it to solve detection problems?
Most of this doubts are driven by the question in the article:
"Does deployJava.js work if the Java DT Toolkit plug-in is disabled?
Yes, deployJava.js contains some pure JavaScript functions, which will continue to work even if the Java DT Toolkit plug-in is disabled."
So... why do I need the deployJava.js if the DT Plug-in exists or vice versa?
Any help on this matter would be very appreciated.
Thank you very much.
If anyone has doubts about it, I've posted this question in the oracle forum and this was the reply:
Deployment toolkit is combination of native library and javascript
helpers. javascript is the only official public API to native library.
JRE is installed with DT native library that is left on the system if
JRE is uninstalled. As of now DT native library is only available on
Windows.
Javascript helper functions use native library if it is available but
many actions can be performed (with degraded accuracy, etc.) even if
native library is not present.
Note that there is new Javascript APIs for DT as alternative to
deployJava.js. it is called
[dtjava.js|http://download.oracle.com/javafx/2.0/deployment/deployment_toolkit.htm#BABJHEJA]
and is primary API for JavaFX applications. However, it also supports
pure Java apps and likely will be main JS API for DT going forward
(some more testing and bug fixing may be needed).
Hope this helps to clarify the relationship.
Thxs to igor
Link to oracle post: https://forums.oracle.com/forums/message.jspa?messageID=9932788#9932788