Changeset 922

Show
Ignore:
Timestamp:
12/11/2007 05:24:01 AM (13 months ago)
Author:
otter
Message:

Bug in conversion script for MultiBody.Forces corrected.

Changed Modelica.StateGraph.Examples.Utilities.Tank:
sqrt(..) changed to sqrt(max(0,2*g*hmax*level))
since a new implementation of sqrt(..) in Dymola may lead to an error here otherwise

Location:
Modelica/trunk/Modelica
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • Modelica/trunk/Modelica/Scripts/ConvertModelica_from_2.2.2_to_3.0.mos

    r918 r922  
    11// Convert from Modelica 2.2.2 to Modelica 3.0 
    2 // 
    3 // original  : 3.14159265358979323846 
    4 // changed to: Modelica.Constants.pi 
    52 
    63// clear 
     
    171168 
    172169// Modelica.Mechanics.MultiBody.Parts.Rotor1D 
    173 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    174 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    175 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"a_start"}  , {"a.start=%a_start%*(Modelica.Constants.pi/180)"}, true); 
     170convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     171convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     172convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"a_start"}  , {"a.start=%a_start%*(3.14159265358979323846/180)"}, true); 
    176173convertModifiers("Modelica.Mechanics.MultiBody.Parts.Rotor1D",{"initType"} ,  
    177174                 {"phi.fixed=if (%initType%==2 or "+ 
     
    202199 
    203200// Modelica.Mechanics.MultiBody.Joints.Internal.Revolute 
    204 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(Modelica.Constants.pi/180)"}, true); 
    205 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    206 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    207 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"a_start"}  , {"a.start=%a_start%*(Modelica.Constants.pi/180)"}, true); 
     201convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(3.14159265358979323846/180)"}, true); 
     202convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     203convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     204convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"a_start"}  , {"a.start=%a_start%*(3.14159265358979323846/180)"}, true); 
    208205convertModifiers("Modelica.Mechanics.MultiBody.Joints.Internal.Revolute",{"initType"} ,  
    209206                 {"phi.fixed=if (%initType%==2 or "+ 
     
    222219 
    223220// Modelica.Mechanics.MultiBody.Joints.Revolute 
    224 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(Modelica.Constants.pi/180)"}, true); 
    225 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    226 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    227 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"a_start"}  , {"a.start=%a_start%*(Modelica.Constants.pi/180)"}, true); 
     221convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(3.14159265358979323846/180)"}, true); 
     222convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     223convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     224convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"a_start"}  , {"a.start=%a_start%*(3.14159265358979323846/180)"}, true); 
    228225convertModifiers("Modelica.Mechanics.MultiBody.Joints.Revolute",{"initType"} ,  
    229226                 {"phi.fixed=if (%initType%==2 or "+ 
     
    242239 
    243240// Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute 
    244 convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(Modelica.Constants.pi/180)"}, true); 
    245 convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    246 convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    247 convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"a_start"}  , {"a.start=%a_start%*(Modelica.Constants.pi/180)"}, true); 
     241convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"phi_offset"}, {"phi_offset=%phi_offset%*(3.14159265358979323846/180)"}, true); 
     242convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     243convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     244convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"a_start"}  , {"a.start=%a_start%*(3.14159265358979323846/180)"}, true); 
    248245convertModifiers("Modelica.Mechanics.MultiBody.Joints.ActuatedRevolute",{"initType"} ,  
    249246                 {"phi.fixed=if (%initType%==2 or "+ 
     
    326323convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"v_start"}  , {"v.start=%v_start%"}); 
    327324convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"a_start"}  , {"a.start=%a_start%"}); 
    328 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    329 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    330 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"wd_start"} , {"wd.start=%wd_start%*(Modelica.Constants.pi/180)"}, true); 
     325convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     326convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     327convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"wd_start"} , {"wd.start=%wd_start%*(3.14159265358979323846/180)"}, true); 
    331328convertModifiers("Modelica.Mechanics.MultiBody.Joints.Cylindrical",{"initType"} ,  
    332329                 {"s.fixed=if (%initType%==2 or "+ 
     
    357354 
    358355// Modelica.Mechanics.MultiBody.Joints.Universal 
    359 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"phi_start_a"}, {"phi_a.start=%phi_start_a%*(Modelica.Constants.pi/180)"}, true); 
    360 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"w_start_a"}  , {"w_a.start=%w_start_a%*(Modelica.Constants.pi/180)"}, true); 
    361 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"a_start_a"}  , {"a_a.start=%a_start_a%*(Modelica.Constants.pi/180)"}, true); 
    362 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"phi_start_b"}, {"phi_b.start=%phi_start_b%*(Modelica.Constants.pi/180)"}, true); 
    363 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"w_start_b"}  , {"w_b.start=%w_start_b%*(Modelica.Constants.pi/180)"}, true); 
    364 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"a_start_b"}  , {"a_b.start=%a_start_b%*(Modelica.Constants.pi/180)"}, true); 
     356convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"phi_start_a"}, {"phi_a.start=%phi_start_a%*(3.14159265358979323846/180)"}, true); 
     357convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"w_start_a"}  , {"w_a.start=%w_start_a%*(3.14159265358979323846/180)"}, true); 
     358convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"a_start_a"}  , {"a_a.start=%a_start_a%*(3.14159265358979323846/180)"}, true); 
     359convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"phi_start_b"}, {"phi_b.start=%phi_start_b%*(3.14159265358979323846/180)"}, true); 
     360convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"w_start_b"}  , {"w_b.start=%w_start_b%*(3.14159265358979323846/180)"}, true); 
     361convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"a_start_b"}  , {"a_b.start=%a_start_b%*(3.14159265358979323846/180)"}, true); 
    365362convertModifiers("Modelica.Mechanics.MultiBody.Joints.Universal",{"initType"} ,  
    366363                 {"phi_a.fixed=if (%initType%==2 or "+ 
     
    396393convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"v_start_y"}, {"v_y.start=%v_start_y%"}); 
    397394convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"a_start_y"}, {"a_y.start=%a_start_y%"}); 
    398 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"phi_start"}, {"phi.start=%phi_start%*(Modelica.Constants.pi/180)"}, true); 
    399 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"w_start"}  , {"w.start=%w_start%*(Modelica.Constants.pi/180)"}, true); 
    400 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"wd_start"} , {"wd.start=%wd_start%*(Modelica.Constants.pi/180)"}, true); 
     395convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"phi_start"}, {"phi.start=%phi_start%*(3.14159265358979323846/180)"}, true); 
     396convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"w_start"}  , {"w.start=%w_start%*(3.14159265358979323846/180)"}, true); 
     397convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"wd_start"} , {"wd.start=%wd_start%*(3.14159265358979323846/180)"}, true); 
    401398convertModifiers("Modelica.Mechanics.MultiBody.Joints.Planar",{"initType"} ,  
    402399                 {"s_x.fixed=if (%initType%==2 or "+ 
     
    438435 
    439436// Modelica.Mechanics.MultiBody.Joints.Spherical 
    440 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"angles_start"} , {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    441 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"w_rel_a_start"}, {"w_rel_a_start=%w_rel_a_start%*(Modelica.Constants.pi/180)"}, true); 
    442 convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"z_rel_a_start"}, {"z_rel_a_start=%z_rel_a_start%*(Modelica.Constants.pi/180)"}, true); 
     437convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"angles_start"} , {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     438convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"w_rel_a_start"}, {"w_rel_a_start=%w_rel_a_start%*(3.14159265358979323846/180)"}, true); 
     439convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"z_rel_a_start"}, {"z_rel_a_start=%z_rel_a_start%*(3.14159265358979323846/180)"}, true); 
    443440convertModifiers("Modelica.Mechanics.MultiBody.Joints.Spherical",{"initType"} ,  
    444441                 {"angles_fixed=if (%initType%==2 or "+ 
     
    459456convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"v_rel_a_start"}, {"v_rel_a.start=%v_rel_a_start%"}); 
    460457convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"a_rel_a_start"}, {"a_rel_a.start=%a_rel_a_start%"}); 
    461 convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"angles_start"} , {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    462 convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"w_rel_a_start"}, {"w_rel_a_start=%w_rel_a_start%*(Modelica.Constants.pi/180)"}, true); 
    463 convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"z_rel_a_start"}, {"z_rel_a_start=%z_rel_a_start%*(Modelica.Constants.pi/180)"}, true); 
     458convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"angles_start"} , {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     459convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"w_rel_a_start"}, {"w_rel_a_start=%w_rel_a_start%*(3.14159265358979323846/180)"}, true); 
     460convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"z_rel_a_start"}, {"z_rel_a_start=%z_rel_a_start%*(3.14159265358979323846/180)"}, true); 
    464461convertModifiers("Modelica.Mechanics.MultiBody.Joints.FreeMotion",{"initType"} ,  
    465462                 {"r_rel_a.fixed=if (%initType%==2 or "+ 
     
    491488convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"v_0_start"}, {"v_0.start=%v_0_start%"}); 
    492489convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"a_0_start"}, {"a_0.start=%a_0_start%"}); 
    493 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"angles_start"} , {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    494 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"w_0_start"}, {"w_0_start=%w_0_start%*(Modelica.Constants.pi/180)"}, true); 
    495 convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"z_0_start"}, {"z_0_start=%z_0_start%*(Modelica.Constants.pi/180)"}, true); 
     490convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"angles_start"} , {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     491convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"w_0_start"}, {"w_0_start=%w_0_start%*(3.14159265358979323846/180)"}, true); 
     492convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"z_0_start"}, {"z_0_start=%z_0_start%*(3.14159265358979323846/180)"}, true); 
    496493convertModifiers("Modelica.Mechanics.MultiBody.Parts.Body",{"initType"} ,  
    497494                 {"r_0.fixed=if (%initType%==2 or "+ 
     
    522519convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"v_0_start"}, {"v_0.start=%v_0_start%"}); 
    523520convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"a_0_start"}, {"a_0.start=%a_0_start%"}); 
    524 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"angles_start"} , {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    525 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"w_0_start"}, {"w_0_start=%w_0_start%*(Modelica.Constants.pi/180)"}, true); 
    526 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"z_0_start"}, {"z_0_start=%z_0_start%*(Modelica.Constants.pi/180)"}, true); 
     521convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"angles_start"} , {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     522convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"w_0_start"}, {"w_0_start=%w_0_start%*(3.14159265358979323846/180)"}, true); 
     523convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"z_0_start"}, {"z_0_start=%z_0_start%*(3.14159265358979323846/180)"}, true); 
    527524convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyShape",{"initType"} ,  
    528525                 {"r_0.fixed=if (%initType%==2 or "+ 
     
    553550convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"v_0_start"}, {"v_0.start=%v_0_start%"}); 
    554551convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"a_0_start"}, {"a_0.start=%a_0_start%"}); 
    555 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"angles_start"}, {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    556 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"w_0_start"}, {"w_0_start=%w_0_start%*(Modelica.Constants.pi/180)"}, true); 
    557 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"z_0_start"}, {"z_0_start=%z_0_start%*(Modelica.Constants.pi/180)"}, true); 
     552convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"angles_start"}, {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     553convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"w_0_start"}, {"w_0_start=%w_0_start%*(3.14159265358979323846/180)"}, true); 
     554convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"z_0_start"}, {"z_0_start=%z_0_start%*(3.14159265358979323846/180)"}, true); 
    558555convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyBox",{"initType"} ,  
    559556                 {"r_0.fixed=if (%initType%==2 or "+ 
     
    585582convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"v_0_start"}, {"v_0.start=%v_0_start%"}); 
    586583convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"a_0_start"}, {"a_0.start=%a_0_start%"}); 
    587 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"angles_start"} , {"angles_start=%angles_start%*(Modelica.Constants.pi/180)"}, true); 
    588 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"w_0_start"}, {"w_0_start=%w_0_start%*(Modelica.Constants.pi/180)"}, true); 
    589 convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"z_0_start"}, {"z_0_start=%z_0_start%*(Modelica.Constants.pi/180)"}, true); 
     584convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"angles_start"} , {"angles_start=%angles_start%*(3.14159265358979323846/180)"}, true); 
     585convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"w_0_start"}, {"w_0_start=%w_0_start%*(3.14159265358979323846/180)"}, true); 
     586convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"z_0_start"}, {"z_0_start=%z_0_start%*(3.14159265358979323846/180)"}, true); 
    590587convertModifiers("Modelica.Mechanics.MultiBody.Parts.BodyCylinder",{"initType"} ,  
    591588                 {"r_0.fixed=if (%initType%==2 or "+ 
     
    10951092                  "Modelica.Electrical.Machines.BasicMachines.DCMachines.DC_ElectricalExcited",  
    10961093                  "Modelica.Electrical.Machines.BasicMachines.DCMachines.DC_SeriesExcited"},  
    1097                  {"rpmNominal"}, {"wNominal=%rpmNominal%*2*Modelica.Constants.pi/60"}); 
     1094                 {"rpmNominal"}, {"wNominal=%rpmNominal%*2*3.14159265358979323846/60"}); 
    10981095 
    10991096// Conversions for Machines.Examples 
  • Modelica/trunk/Modelica/StateGraph.mo

    r912 r922  
    15411541 
    15421542      Units.VolumeFlowRate Fi "inflow"; 
    1543       annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{ 
    1544                   -100,-100},{100,100}}), graphics={Polygon( 
     1543      annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100, 
     1544                  -100},{100,100}}), graphics={Polygon( 
    15451545                points={{-100,-100},{0,100},{100,-100},{-100,-100}}, 
    15461546                lineColor={0,0,0}, 
     
    15571557      Units.VolumeFlowRate Fo "outflow"; 
    15581558      Boolean open "valve open"; 
    1559       annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{ 
    1560                   -100,-100},{100,100}}), graphics={Polygon( 
     1559      annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100, 
     1560                  -100},{100,100}}), graphics={Polygon( 
    15611561                points={{-100,100},{0,-100},{100,100},{-100,100}}, 
    15621562                lineColor={0,0,0}, 
     
    16551655      der(level) = (inflow1.Fi - outflow1.Fo)/(hmax*A); 
    16561656      if outflow1.open then 
    1657         outflow1.Fo = sqrt(2*g*hmax*level)*a; 
     1657        outflow1.Fo = sqrt(max(0,2*g*hmax*level))*a; 
    16581658      else 
    16591659        outflow1.Fo = 0; 
     
    16691669                  10,-40}}, rotation=0))); 
    16701670      parameter Real maxflow=1 "maximal flow out of source"; 
    1671       annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{ 
    1672                   -100,-100},{100,100}}), graphics={Rectangle( 
     1671      annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100, 
     1672                  -100},{100,100}}), graphics={Rectangle( 
    16731673                extent={{-80,40},{80,-40}}, 
    16741674                lineColor={0,0,0}, 
     
    24702470          Rectangle( 
    24712471            extent={{-10,100},{10,-100}}, 
    2472             fillColor=DynamicSelect({0,0,0}, if enableFire > 0.5 then {0,255,0} else  
    2473                      {0,0,0}), 
     2472            fillColor=DynamicSelect({0,0,0}, if enableFire > 0.5 then {0,255,0} 
     2473                 else {0,0,0}), 
    24742474            lineColor={0,0,0}, 
    24752475            fillPattern=FillPattern.Solid), 
     
    24862486          Text( 
    24872487            extent={{-200,-120},{200,-145}}, 
    2488             lineColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} else  
    2489                      {0,0,0}), 
     2488            lineColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} 
     2489                 else {0,0,0}), 
    24902490            textString="%condition")}), 
    24912491    Diagram(coordinateSystem( 
     
    25322532          Rectangle( 
    25332533            extent={{-10,100},{10,-100}}, 
    2534             fillColor=DynamicSelect({0,0,0}, if enableFire > 0.5 then {0,255,0} else  
    2535                      {0,0,0}), 
     2534            fillColor=DynamicSelect({0,0,0}, if enableFire > 0.5 then {0,255,0} 
     2535                 else {0,0,0}), 
    25362536            lineColor={0,0,0}, 
    25372537            fillPattern=FillPattern.Solid), 
     
    25432543          Ellipse( 
    25442544            extent={{7,-81},{-7,-95}}, 
    2545             lineColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} else  
    2546                      {0,0,0}), 
    2547             fillColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} else  
    2548                      {0,0,0}), 
     2545            lineColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} 
     2546                 else {0,0,0}), 
     2547            fillColor=DynamicSelect({0,0,0}, if condition > 0.5 then {0,255,0} 
     2548                 else {0,0,0}), 
    25492549            fillPattern=FillPattern.Solid)}), 
    25502550    Diagram(coordinateSystem(