#
msgid ""
msgstr ""
"Project-Id-Version: Modelica by Example 0.2.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2014-04-14 10:14-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ../../source/behavior/equations/variables.rst:5
msgid "Variables"
msgstr "变量"

#: ../../source/behavior/equations/variables.rst:7
msgid ""
"As we saw in the previous section, a model definition typically contains "
"variable declarations.  The basic syntax for a variable declaration is "
"simply the \"type\" of the variable (which will be discussed shortly in the "
"section on :ref:`builtin-types`) followed by the name of the variable, "
"*e.g.*,"
msgstr ""
"正如我们在前一节中所提到的，模型定义的特征之一就是包含变量声明。\ "
"变量声明的基本语法就是在变量的“类型”（将在\\ :ref:`builtin-"
"types`\\ 章节中简短讨论）之后紧随变量的名称，"

#: ../../source/behavior/equations/variables.rst:17
msgid ""
"Variables sharing the same type can be grouped together using the following "
"syntax:"
msgstr "相同类型的变量可以组合在一起使用下面的语法："

#: ../../source/behavior/equations/variables.rst:24
msgid "A declaration can also be followed by a description, e.g.:"
msgstr "变量声明也可以跟随在描述的后面。\ "

#: ../../source/behavior/equations/variables.rst:33
msgid "Variability"
msgstr "可变性"

#: ../../source/behavior/equations/variables.rst:40
msgid "Parameters"
msgstr "参数"

#: ../../source/behavior/equations/variables.rst:42
msgid ""
"By default, variables declared inside a model are assumed to be continuous "
"variables (variables whose solution is generally smooth, but which may also "
"include discontinuities).  However, as we first saw in the section titled "
":ref:`getting-physical`, it is also possible to add the ``parameter`` "
"qualifier in front of a variable declaration and to indicate that the "
"variable is known *a priori*.  You can think of a parameter as \"input "
"data\" to the model that is constant with respect to time."
msgstr ""
"模型中的变量声明默认假定为连续变量（连续型变量的解通常是连续的，但是也可能包含间断点）。\ "
"然而，正如在\\ :ref:`getting-"
"physical`\\ 那节中提到的，能够在变量声明前加入\\ ``parameter``\\ "
"（参数）限定词，以表明该变量是先验已知的。\ "
"我们可以认为这个参数作为模型的“输入数据”，是不随时间变化的常数。\ "

#: ../../source/behavior/equations/variables.rst:54
msgid "Constants"
msgstr "常数"

#: ../../source/behavior/equations/variables.rst:56
msgid ""
"Closely related to the ``parameter`` qualifier is the ``constant`` "
"qualifier.  When placed in front of a variable declaration, the ``constant``"
" qualifier also implies that the value of the variable is known *a priori* "
"and is constant with respect to time.  The distinction between the two lies "
"in the fact that a ``parameter`` value can be changed from one simulation to"
" the next whereas the value of a ``constant`` cannot be changed once the "
"model is compiled.  The use of ``constant`` by a model developer ensures "
"that end users are not given the option to make changes to the ``constant``."
"  A ``constant`` is frequently used to represent physical quantities like "
":math:`\\pi` or the Earth's gravitational acceleration, which can be assumed"
" constant for most engineering simulations."
msgstr ""
"与\\ ``parameter``\\ （参数）限定符关系密切的是\\ ``constant``\\ （常数）限定词。\ "
"当被置于变量声明前，\\ "
"``constant``\\ （常数）限定符意味着变量的值是先验已知的常数，且不随时间变化。\ "
"这两者之间的区别在于一旦模型被编译，\\ "
"``parameter``\\ 限定词的值是可以随着模拟改变而改变的，但是\\ ``constant``\\ "
"限定词的值是不会改变的。\ "
"对于模型开发者来说，\\ ``constant``\\ 限定词的应用是保证终端用户者不能更改该\\ ``constant``\\ 。\ "
"\\ ``constant``\\ 限定词经常被用于代表物理常数。\ "
"比如像数学中的\\ `\\pi`\\ "
"或者重力加速度这样在大多数工程仿真中被假定为常数的量。\ "

#: ../../source/behavior/equations/variables.rst:70
msgid "Discrete Variables"
msgstr "离散变量"

#: ../../source/behavior/equations/variables.rst:74
msgid ""
"Another qualifier that can be placed in front of a variable declaration is "
"the ``discrete`` qualifier.  We have not yet shown any example where the "
"``discrete`` qualifier would be relevant.  However, it is included now for "
"completeness since it is the last remaining variability qualifier."
msgstr ""
"另外一种可以放在变量声明前的限定词是\\ ``discrete``\\ （离散）限定词。\ "
"目前还没有相关的例子可以演示\\ ``discrete``\\ "
"限定词的作用。\ "
"但为了完整起见，它作为最后一个可变性限定词也列举在这里。\ "

#: ../../source/behavior/equations/variables.rst:83
msgid "Built-In Types"
msgstr "内建类型"

#: ../../source/behavior/equations/variables.rst:87
msgid ""
"Many of the examples so far referenced the ``Real`` type when declaring "
"variables.  As the name suggests, ``Real`` is used to represent real valued "
"variables (which will generally be translated into floating point "
"representations by a Modelica compiler).  However, ``Real`` is just one of "
"the four built-in types in Modelica."
msgstr ""
"目前为止，很多例子声明变量的时候引用\\ ``Real``\\ （实数）类型。\ "
"顾名思义，\\ ``Real``\\ "
"用于代表实数变量（实数变量在Modelica编译器中通常被编译为浮点数）。\ "
"然而，\\ ``Real``\\ "
"仅仅是Modelica语言的四大内置类型之一。\ "

#: ../../source/behavior/equations/variables.rst:97
msgid ""
"Another of the built-in types is the ``Integer`` type.  This type is used to"
" represent integer values.  ``Integer`` variables have many uses including "
"representing the size of arrays (this use case will be discussed shortly in "
"an upcoming section on :ref:`vectors-and-arrays`)."
msgstr ""
"另外一种内置类型是\\ ``Integer``\\ （整数）类型。\ "
"这种类型用于代表整数值。\ "
"\\ ``Integer``\\ "
"变量有许多用途，包括代表数组的大小（这种用途的例子将在\\ :ref:`vectors-and-arrays`\\ 这节中讨论）。\ "

#: ../../source/behavior/equations/variables.rst:103
msgid ""
"The remaining built-in types are ``Boolean`` (used to represent values that "
"can be either ``true`` or ``false``) and ``String`` (used for representing "
"character strings)."
msgstr ""
"其他内置类型是\\ ``Boolean``\\ （布尔值）（用于代表值的\\ ``true``\\ （真）或\\ ``false``\\ （假））和\\"
" ``String``\\ （用于代表字符串）。\ "

#: ../../source/behavior/equations/variables.rst:107
msgid ""
"Each of the built-in types restricts the possible values that a variable can"
" have.  Obviously, an ``Integer`` variable cannot have the value ``2.5``, a "
"``Boolean`` or ``String`` cannot be ``7`` and a ``Real`` variable cannot "
"have the value ``\"Hello\"``."
msgstr ""
"每一个内置类型都限定了变量值的可能值。\ "
"显然，\\ ``Integer``\\ 变量不能是\\ ``2.5``\\ 。\ "
"\\ ``Boolean``\\ "
"或者\\ ``String``\\ （字符）不能是\\ ``7``\\ 。\ "
"\\ ``Real``\\ 变量不能是\\ ``\"Hello\"``\\ 。\ "

#: ../../source/behavior/equations/variables.rst:115
msgid "Derived Types"
msgstr "派生类型"

#: ../../source/behavior/equations/variables.rst:119
msgid ""
"As we saw in the previous examples that introduced :ref:`physical-types`, it"
" is possible to \"specialize\" the built-in types.  This feature is used "
"mainly to modify the values associated with :ref:`attributes` like ``unit``."
"  The general syntax for creating derived types is:"
msgstr ""
"正如前面介绍\\ :ref:`physical-types`\\ 的例子一样，内置类型可以进行“特殊化”。\ "
"这个特性主要是用于修改与\\ "
":ref:`attributes`\\ 相关的值，比如\\ ``unit``\\ 。\ "
"用于创建派生类型的语法是："

#: ../../source/behavior/equations/variables.rst:131
msgid ""
"Frequently, the ``BaseTypeName`` will be one of the built-in types (*e.g.*, "
"``Real``).  But it can also be another derived type.  This means that "
"multiple levels of specialization can be supported, *e.g.*,"
msgstr ""
"\\ ``BaseTypeName``\\ （基本类型名称）一般为内置类型（比如\\ ``Real``\\ "
"（实数））。\ "
"但是它也可以是另外一种派生类型。\ "
"这意味着多层次的限定也是支持的。\ "
"例如："

#: ../../source/behavior/equations/variables.rst:143
msgid "Enumerations"
msgstr "枚举类型"

#: ../../source/behavior/equations/variables.rst:147
msgid ""
"An ``enumeration`` type is very similar to the ``Integer`` type.  An "
"``enumeration`` is typically used to define a type that can take on only a "
"limited set of specific values.  In fact, enumerations are not strictly "
"necessary in the language.  Their values can always be represented by "
"integers.  However, the ``enumeration`` type is safer and more readable than"
" an ``Integer``."
msgstr ""
"\\ ``enumeration``\\ （枚举）类型和\\ ``Integer``\\ 类型非常类似。\ "
"\\ ``enumeration``\\ "
"类型通常用于定义一组有限的特定值。\ "
"事实上，枚举类型在语言上不是必须的。\ "
"\\ ``enumeration``\\ 类型的值总是可以用整数替代。\ "
"但是\\ ``enumeration``\\ 类型却比\\ ``Integer``\\ 类型更安全和合理。\ "

#: ../../source/behavior/equations/variables.rst:154
msgid ""
"There are two built-in enumeration types.  The first of these is "
"``AssertionLevel`` and it is defined as follows:"
msgstr "在Modelica中有两种内置的枚举类型。\ "
"第一种是\\ ``AssertionLevel``\\ （断言级别）。\ "
"其定义如下："

#: ../../source/behavior/equations/variables.rst:164
msgid ""
"The significance of these values will be discussed in a forthcoming section "
"on :ref:`assertions`."
msgstr "这些值的用处将在接下来的\\ :ref:`assertions`\\ 这节中讨论。\ "

#: ../../source/behavior/equations/variables.rst:167
msgid ""
"The other built-in enumeration is ``StateSelect`` and it is defined as "
"follows:"
msgstr "另外一种内置枚举类型是\\ ``StateSelect``\\ （状态选择），其定义如下："

#: ../../source/behavior/equations/variables.rst:177
msgid "Attributes"
msgstr "属性"

#: ../../source/behavior/equations/variables.rst:181
msgid ""
"So far in this chapter we have mentioned attributes (*e.g.*, ``unit``), but "
"we haven't discussed them in detail. For example, *which* attributes are "
"present on a given variable?  This depends on the type of the variable (and "
"which built-in and derived types it is based on).  The following table "
"introduces all the possible attributes indicating their types (*i.e.*, what "
"type of value can be given for that attribute), which types they can be "
"associated with and finally a brief description of the attribute:"
msgstr ""
"在本章中到目前为止，已经提到了属性（例如\\ ``unit``\\ （单位））。\ "
"但是还没有详细讨论过，例如，一个既定的变量应该有\\ *何种*\\ "
"属性？这主要依赖于变量的类型（以及它所基于的基于内置类型或派生类型）。\ "
"下面的表格列举了所有可能的属性以及与其类型（例如属性可以赋什么类型的值）以及其可以关联的类型，最后表格则简短描述属性的作用。\ "

#: ../../source/behavior/equations/variables.rst:203
msgid "Attributes of ``Real``"
msgstr "\\ ``Real``\\ 的属性"

#: ../../source/behavior/equations/variables.rst:210
#: ../../source/behavior/equations/variables.rst:340
#: ../../source/behavior/equations/variables.rst:393
#: ../../source/behavior/equations/variables.rst:425
msgid "``quantity``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:206
#: ../../source/behavior/equations/variables.rst:336
#: ../../source/behavior/equations/variables.rst:389
#: ../../source/behavior/equations/variables.rst:421
msgid "A textual description of what the variable represents"
msgstr "用以来描述这个变量所代表含义的文本。\ "

#: ../../source/behavior/equations/variables.rst:208
#: ../../source/behavior/equations/variables.rst:306
#: ../../source/behavior/equations/variables.rst:338
#: ../../source/behavior/equations/variables.rst:391
#: ../../source/behavior/equations/variables.rst:423
#: ../../source/behavior/equations/variables.rst:435
msgid "**Default**: ``\"\"``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:210
#: ../../source/behavior/equations/variables.rst:290
#: ../../source/behavior/equations/variables.rst:308
#: ../../source/behavior/equations/variables.rst:340
#: ../../source/behavior/equations/variables.rst:393
#: ../../source/behavior/equations/variables.rst:425
#: ../../source/behavior/equations/variables.rst:437
msgid "**Type**: ``String``"
msgstr "\\ **类型**\\ ：\\ ``String``\\ "

#: ../../source/behavior/equations/variables.rst:227
#: ../../source/behavior/equations/variables.rst:354
#: ../../source/behavior/equations/variables.rst:407
#: ../../source/behavior/equations/variables.rst:437
msgid "``start``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:213
msgid ""
"The ``start`` attribute has many uses.  The main purpose of the ``start`` "
"attribute (as discussed extensively in the section on :ref:`initialization`)"
" is to provide \"fallback\" initial conditions for state variables (see "
"``fixed`` attribute for more details)."
msgstr ""
"\\ ``start``\\ （初值）这个属性有很多用途。\ "
"\\ ``start``\\ 属性的主要目的是（正如在\\ "
":ref:`initialization`\\ 那节里广泛讨论过的）为状态变量提供“备用”的初始状态。\ "
"（参见\\ ``fixed``\\ 属性以获取进一步的细节）"

#: ../../source/behavior/equations/variables.rst:218
msgid ""
"The ``start`` attribute may also be used as an initial guess if the variable"
" has been chosen as an iteration variable."
msgstr "\\ ``start``\\ 属性的也可以用于变量，是迭代变量时的初始假想值。\ "

#: ../../source/behavior/equations/variables.rst:221
msgid ""
"Finally, if a ``parameter`` doesn't have an explicit value specified, the "
"value of the ``start`` attribute will be used as the default value for the "
"``parameter``."
msgstr ""
"最后，如果一个\\ ``parameter``\\ 没有明确指定的值，\ "
"那么\\ ``start``\\ 属性的值可以作为\\ ``parameter``\\ 的默认值。\ "

#: ../../source/behavior/equations/variables.rst:225
#: ../../source/behavior/equations/variables.rst:352
#: ../../source/behavior/equations/variables.rst:405
msgid "**Default**: ``0.0``"
msgstr "\\ **默认值**\\ ：\\ ``0.0``\\ "

#: ../../source/behavior/equations/variables.rst:227
#: ../../source/behavior/equations/variables.rst:262
#: ../../source/behavior/equations/variables.rst:272
#: ../../source/behavior/equations/variables.rst:318
msgid "**Type**: ``Real``"
msgstr "\\ **类型**\\ ：\\ ``Real``\\ "

#: ../../source/behavior/equations/variables.rst:252
#: ../../source/behavior/equations/variables.rst:362
#: ../../source/behavior/equations/variables.rst:415
msgid "``fixed``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:230
msgid ""
"The ``fixed`` attribute changes the way the ``start`` attribute is used when"
" the ``start`` attribute is used as an initial condition.  Normally, the "
"``start`` attribute is considered a \"fallback\" initial condition and only "
"used if there are insufficient initial conditions explicitly specified in "
"the ``initial equation`` sections.  However, if the ``fixed`` attribute is "
"set to ``true``, then the ``start`` attribute is treated as if it was used "
"as an explicit ``initial equation`` (*i.e.,* it is no longer used as a "
"fallback, but instead treated as a strict initial condition)."
msgstr ""
"\\ ``fixed``\\ （固定）属性改变了\\ ``start``\\ 属性用于初始值的方式。\ "
"正常来讲，\\ ``start``\\ 属性被认为是“备用”的初始状态。\ "
"这仅仅会在\\ ``initial equation``\\ 中没有指定足够的初始状态时使用。\ "
"然而，如果\\ ``fixed``\\ 属性被设为\\ ``true``\\ ，\ "
"那么\\ ``start``\\ 属性就被明确地用于\\ ``initial "
"equation``\\ 。\ "
"（即属性不再作为备用，而是作为严格的初始条件）。\ "

#: ../../source/behavior/equations/variables.rst:241
msgid ""
"Another, more obscure, use of the ``fixed`` attribute is for \"computed "
"parameters\".  In rare cases where a ``parameter`` cannot be initialized "
"explicitly, it is possible to provide a general equation for the parameter "
"in an ``initial equation`` section. But in cases where the ``parameter`` is "
"initialized in this way, the ``fixed`` attribute for the parameter variable "
"must be set to ``false``."
msgstr ""
"此外，一种\\ ``fixed``\\ 属性的晦涩用法是用在“算出的参数”。\ "
"在某些罕见的情况下，一个\\ ``parameter``\\ "
"不能显式初始化。\ "
"因此，参数的需要得到一个通用方程作为其\\ ``initial equation``\\ 。\ "
"如果\\ ``parameter``\\ "
"一旦通过这种方式初始化，那么参数变量的\\ ``fixed``\\ 属性必须设置为\\ ``false``\\ 。\ "

#: ../../source/behavior/equations/variables.rst:249
#: ../../source/behavior/equations/variables.rst:359
#: ../../source/behavior/equations/variables.rst:412
msgid ""
"**Default**: ``false`` (except for ``parameter`` variables, where it is "
"``true`` by default)"
msgstr "\\ **默认**\\ ：\\ ``false``\\ （除了\\ ``parameter``\\ 变量，这里的默认值为\\ ``True``\\ ）"

#: ../../source/behavior/equations/variables.rst:262
#: ../../source/behavior/equations/variables.rst:372
msgid "``min``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:255
#: ../../source/behavior/equations/variables.rst:365
msgid ""
"The ``min`` attribute is used to specify the minimum allowed value for a "
"variable.  This attribute can be used by editors and compilers in various "
"ways to inform users or developers about potentially invalid input data or "
"solutions."
msgstr ""
"\\ ``min``\\ （最小）属性用来指定变量允许的最小值。\ "
"这个属性可以通过各种方式被编辑器或者编译器使用，以通知使用者或者开发者关于潜在的无效输入或者解。\ "

#: ../../source/behavior/equations/variables.rst:260
#: ../../source/behavior/equations/variables.rst:370
msgid "**Default**: -:math:`\\infty`"
msgstr "\\ **默认值**\\ ：\\ -:math:`\\infty`\\ "

#: ../../source/behavior/equations/variables.rst:272
#: ../../source/behavior/equations/variables.rst:383
msgid "``max``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:265
#: ../../source/behavior/equations/variables.rst:375
msgid ""
"The ``max`` attribute is used to specify the maximum allowed value for a "
"variable.  This attribute can be used by editors and compilers in various "
"ways to inform users or developers about potentially invalid input data or "
"solutions."
msgstr ""
"\\ ``max``\\ （最大）属性用于指定变量允许的最大值。\ "
"这个属性可以通过各种方式被编辑器或者编译器使用，去在出现可能是无效输入或者解时提醒使用者或者开发者。\ "

#: ../../source/behavior/equations/variables.rst:270
#: ../../source/behavior/equations/variables.rst:380
msgid "**Default**: :math:`\\infty`"
msgstr "\\ **默认值**\\ ：\\ :math:`\\infty`\\ "

#: ../../source/behavior/equations/variables.rst:290
msgid "``unit``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:275
msgid ""
"As discussed extensively in this chapter, variables can have physical units "
"associated with them.  There are rules about how these units are expressed, "
"but the net result is that by using the ``unit`` attribute it is possible "
"check models to make sure that equations are physically consistent.  A value"
" of ``\"1\"`` indicates the value has no physical units.  On the other hand,"
" a value of ``\"\"`` (the default value if no value is given) indicates that"
" the physical units are simply unspecified.  The difference between "
"``\"1\"`` and ``\"\"`` is that the former is an explicit statement that the "
"quantity is dimensionless (has not units) while the latter indicates that "
"the quantity may have physical units but they are left unspecified."
msgstr ""
"正如在本章中广泛谈到的那样，变量是可以拥有与其相关的物理单位。\ "
"这些单位的表示有其规则。\ "
"而最终结果是\\ ``unit``\\ "
"（单位）属性可以用于检查模型，确保方程的物理一致性。\ "
"\\ ``\"1\"``\\ 代表值没有物理单位。\ "
"另一方面\\ ``\"\"``\\ （默认没有给定值）表明物理单位不确定。\ "
"\\ ``\"1\"``\\ 和\\ ``\"\"``\\ 之间的区别在于前者明确指出量是无量纲（无单位）。\ "
"而后者指出量可能是有物理单位的，只是没有明确指出。\ "

#: ../../source/behavior/equations/variables.rst:288
msgid "**Default**: ``\"\"`` (*i.e.,* no physical units specified)"
msgstr "\\ **默认值**\\ ：\\ ``\"\"``\\ （即没有指定物理单位）"

#: ../../source/behavior/equations/variables.rst:308
msgid "``displayUnit``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:293
msgid ""
"While the ``unit`` attribute describes what physical units should be "
"associated with the value of a variable, the ``displayUnit`` expresses a "
"preference for what units should be used when displaying the value of a "
"variable.  For example, the SI unit for pressure is *Pascals*.  However, "
"standard atmospheric pressure is 101,325 *Pascals*.  When entering, "
"displaying or plotting pressures it may be more convenient to use *bars*."
msgstr ""
"\\ ``unit``\\ 属性描述了与变量相关值的物理单位。\ "
"\\ ``displayUnit``\\ （显示单位）属性表达了当展示变量的值时偏向使用何种单位。\ "
"例如，压力的国际单位是\\ *帕斯卡*\\ 。\ "
"标准大气压是101,325\\ *帕斯卡*\\ 。\ "
"当输入、显示或者绘制压力的时候，单位用\\ *巴*\\ 更方便。\ "

#: ../../source/behavior/equations/variables.rst:301
msgid ""
"The ``displayUnit`` attribute doesn't affect the value of a variable or the "
"equations used to simulate a model.  It only affects the *rendering* of "
"those values by potentially transforming them into more convenient units for"
" display."
msgstr "\\ ``displayUnit``\\ 属性不影响变量的值或者模拟模型的方程它仅仅影响把它们转换成更方便的单位显示的那些值的\\ *显示*\\ 。\ "

#: ../../source/behavior/equations/variables.rst:318
msgid "``nominal``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:311
msgid ""
"The ``nominal`` attribute is used to specify a nominal value for a variable."
"  This nominal value is generally used in numerical calculations to perform "
"various types of scaling used to avoid round-off or truncation error."
msgstr "\\ ``nominal``\\ （额定）属性用于指定变量的额定值。\ "
"额定值一般用于在数字计算中执行各种类型的扩展，以避免四舍五入或者截断误差。\ "

#: ../../source/behavior/equations/variables.rst:330
msgid "``stateSelect``"
msgstr ""

#: ../../source/behavior/equations/variables.rst:330
msgid "**Type**: ``StateSelect`` (enumeration, see :ref:`enumerations`)"
msgstr "\\ **类型**\\ ：\\ ``StateSelect``\\ （枚举类型，请参阅\\ :ref:`enumerations`\\ ）"

#: ../../source/behavior/equations/variables.rst:321
msgid ""
"The ``stateSelect`` attribute is used as a hint to Modelica compilers about "
"whether a given variable should be chosen as a state (in cases where there "
"is a choice to be made).  As discussed previously in the section on "
":ref:`enumerations`, the possible values for this attribute are ``never``, "
"``avoid``, ``default``, ``prefer`` and ``always``."
msgstr ""
"\\ ``stateSelect``\\ （状态选择）属性用于为Modeliac编译器提供线索，\ "
"去确定某个既定的变量是否应该被选为状态量（在需要选择的情况）。\ "
"在上节\\ :ref:`enumerations`\\ 中我们讨论过，这个属性可能值是：\ "
"\\ ``never``\\ （从不）、\\ ``avoid``\\ （避免）、\\ ``default``\\ "
"（默认）、\\ ``prefer``\\ （偏向）、\\ ``always``\\ （总是）"

#: ../../source/behavior/equations/variables.rst:328
msgid "**Default**: ``default``"
msgstr "\\ **默认值**\\ ：\\ ``default``\\ "

#: ../../source/behavior/equations/variables.rst:333
msgid "Attributes of ``Integer``"
msgstr "\\ ``Integer``\\ 的属性"

#: ../../source/behavior/equations/variables.rst:343
msgid ""
"It is worth noting that an ``Integer`` variable can be chosen as a state "
"variable or as an iteration variable.  Under these circumstances, the "
"``start`` attribute may be used by a compiler in the same was as it is for "
"``Real`` variables (*see previous discussion of* :ref:`fixed-attribute`)"
msgstr ""
"值得注意的是，\\ ``Integer``\\ 变量可以用来表示状态变量或者迭代变量。\ "
"在这种情况下，编译器就可以应用\\ ``start``\\ "
"属性。\ "
"其用法和\\ ``Real``\\ 变量的情况一样（\\ *见前面讨论的*\\ :ref:`fixed-attribute`\\ ）。\ "

#: ../../source/behavior/equations/variables.rst:349
#: ../../source/behavior/equations/variables.rst:402
msgid ""
"In the case of a ``parameter``, the ``start`` attribute will (as usual) be "
"used as the default value for the ``parameter``."
msgstr "对于\\ ``parameter``\\ ，\\ ``start``\\ 属性（通常）会作为\\ ``parameter``\\ 的默认值。\ "

#: ../../source/behavior/equations/variables.rst:354
#: ../../source/behavior/equations/variables.rst:372
#: ../../source/behavior/equations/variables.rst:382
msgid "**Type**: ``Integer``"
msgstr "\\ **类型**\\ ：\\ ``Integer``\\ "

#: ../../source/behavior/equations/variables.rst:357
#: ../../source/behavior/equations/variables.rst:410
msgid "*see previous discussion of* :ref:`fixed-attribute`"
msgstr "\\ *参见前节对*\\ :ref:`fixed-attribute`\\ *的讨论*\\ 。\ "

#: ../../source/behavior/equations/variables.rst:252
#: ../../source/behavior/equations/variables.rst:362
#: ../../source/behavior/equations/variables.rst:407
#: ../../source/behavior/equations/variables.rst:415
msgid "**Type**: ``Boolean``"
msgstr "\\ **类型**\\ ：\\ ``Boolean``\\ "

#: ../../source/behavior/equations/variables.rst:386
msgid "Attributes of ``Boolean``"
msgstr "\\ ``Boolean``\\ 的属性"

#: ../../source/behavior/equations/variables.rst:396
msgid ""
"It is worth noting that an ``Boolean`` variable can be chosen as a state "
"variable or as an iteration variable.  Under these circumstances, the "
"``start`` attribute may be used by a compiler in the same was as it is for "
"``Real`` variables (*see previous discussion of* :ref:`fixed-attribute`)"
msgstr ""
"值得注意的是，\\ ``Boolean``\\ 变量可以用来表示状态变量或者迭代变量。\ "
"在这种情况下，\\ ``start``\\ "
"属性就可以被编译器使用，就如它在\\ ``Real``\\ 变量中的应用一样（\\ *见前面讨论*\\ 的\\ :ref:`fixed-"
"attribute`\\ ）。\ "

#: ../../source/behavior/equations/variables.rst:418
msgid "Attributes of ``String``"
msgstr "\\ ``String``\\ 的属性"

#: ../../source/behavior/equations/variables.rst:428
msgid ""
"Technically, a ``String`` could be chosen as a state variable (or even an "
"iteration variable), but in practice this never happens. So for a ``String``"
" variable the only practical use of the ``start`` attribute is to define the"
" value of a ``parameter`` (that happens to have the type of ``String``) if "
"no explicit value for the parameter is given."
msgstr ""
"从技术上讲，一串\\ ``String``\\ （字符串）可以作为一个状态变量（甚至迭代变量）。\ "
"但事实上从没有这种情况。\ "
"因此对于\\ "
"``String``\\ 变量，\\ ``start``\\ 属性的唯一实际应用是定义（恰好是\\ ``String``\\ 类型的）\\ "
"``parameter``\\ 的值。\ "
"前提是参数没有给定明确的值。\ "

#: ../../source/behavior/equations/variables.rst:439
msgid ""
"It is worth noting that :ref:`derived-types` retain the attributes of the "
"built-in type that they are ultimately derived from.  Also, although the "
"type of, for example, the ``min`` attribute on a ``Real`` variable is listed"
" having the type ``Real`` it should be pointed out explicitly that "
"attributes cannot themselves have attributes.  In other words, the ``start``"
" attribute doesn't have a ``start`` attribute."
msgstr ""
"值得注意的是\\ :ref:`derived-types`\\ 保留了其来源的内置类型的属性。\ "
"例如，实数变量中的\\ ``min``\\ 属性拥有\\ "
"``Real``\\ 类型。\ "
"但是必须明确指出，属性自己不能拥有属性。\ "
"换句话说，\\ ``start``\\ 属性不能拥有\\ ``start``\\ "
"属性。\ "

#: ../../source/behavior/equations/variables.rst:450
msgid "Modifications"
msgstr "修改语句"

#: ../../source/behavior/equations/variables.rst:454
msgid ""
"So far, we've seen two types of modifications.  The first is when we change "
"the value of an attribute, *e.g.,*"
msgstr "目前为止，本书只介绍了有两种修改语句类型。\ "
"第一种是用于修改属性值，例如："

#: ../../source/behavior/equations/variables.rst:464
msgid ""
"In this case, we are creating a variable ``x`` of type ``Real``.  But rather"
" than leaving it \"as is\", we then apply a modification to ``x``.  "
"Specifically, we \"reach inside\" of ``x`` and change the ``start`` "
"attribute value.  In this example, we are only going one level into ``x`` to"
" make our modification.  But as we will see in our next example, it is "
"possible to make modifications at arbitrary depths."
msgstr ""
"在这个例子中，创建了一个实数类型的变量\\ ``x``\\ 。\ "
"但是我们不打算直接使用这个变量。\ "
"我们对\\ ``x``\\ "
"加入修改语句。\ "
"在这里，我们修改\\ ``x``\\ 的\\ ``start``\\ 属性。\ "
"这仅仅只是进入\\ ``x``\\ "
"的第一层做修改。\ "
"在接下来的例子中，我们会在任意深度对\\ ``x``\\ 做修改。\ "

#: ../../source/behavior/equations/variables.rst:472
msgid ""
"The other case where we have seen modifications was in the section on :ref"
":`avoiding-repetition`.  There we saw modification used in conjunction with "
"``extends`` clauses, *e.g.,*"
msgstr "另一种修改是在\\ :ref:`avoiding-repetition`\\ 那节中。\ "
"此时修改语句是和\\ ``扩展``\\ 条款连接在一起的。\ "
"例如："

#: ../../source/behavior/equations/variables.rst:482
msgid ""
"Here, the modification is applied to elements that were inherited from the "
"``QuiescentModelWithInheritance`` model.  As with modifications to "
"attributes, the element being modified (a model in this case) is followed by"
" parentheses and inside those parentheses we specify the modifications we "
"wish to make."
msgstr ""
"在这里，修改语句作用在继承自\\ ``QuiescentModelWithInheritance``\\ "
"模型的部件上。\ "
"和修改属性时一样，受修改的（模型）元件后带有括号。\ "
"而所希望的修改则正正在括号中。\ "

#: ../../source/behavior/equations/variables.rst:490
msgid ""
"It is worth noting that modifications can be nested arbitrarily deep. For "
"example, imagine we wanted to modify the ``start`` attribute for the "
"variable ``x`` inherited from the ``QuiescentModelWithInheritance`` model.  "
"In Modelica, such a modification would be made as follows:"
msgstr ""
"值得注意的是，修改语句可以任意嵌套。\ "
"例如，我们可以修改来自于模型\\ ``QuiescentModelWithInheritance``\\ 变量\\ "
"``x``\\ 中的\\ ``start``\\ 属性，在Modelica中，这种修改语句如下："

#: ../../source/behavior/equations/variables.rst:500
msgid ""
"Here we first \"reach inside\" the ``QuiescentModelWithInheritance`` model "
"to modify the contents that we \"inherit\" from it (``x`` in this case) and "
"then we \"reach inside\" ``x`` to modify the value of the ``start`` "
"attribute."
msgstr ""
"在这里，首先“进入”模型\\ ``QuiescentModelWithInheritance``\\ 修改（从\\ ``x``\\ "
"中“继承”的）内容。\ "
"然后，再“进入”\\ ``x``\\ 修改\\ ``start``\\ 属性的值。\ "

#: ../../source/behavior/equations/variables.rst:505
msgid ""
"One of the central themes of Modelica is support for reuse and avoiding the "
"need to \"copy and paste\" code.  Modifications are one of the essential "
"features in Modelica that support reuse.  We'll learn about others in future"
" sections."
msgstr ""
"Modelica的核心主题之一是支持重用而避免“复制和粘贴”代码。\ "
"而修改语句就是Modeliaca中支持重用的基本特性。\ "
"在后面的章节中将会学习其他支持重用的特性。\ "

#: ../../source/behavior/equations/variables.rst:316
msgid "**Default**:"
msgstr ""

