1 Постановка задачи

Вид материалаДокументы

Содержание


3.3Параметры модели и их связь с численными методами
Подобный материал:
1   2   3   4   5   6   7

3.3Параметры модели и их связь с численными методами


Для численной реализации созданной экспертами теоретической модели с помощью математических методов необходимо связать воедино структуры данных, описанные в пунктах Error: Reference source not found и 3.2. Дело в том, что численные методы требуют иной формализации исходных данных, чем модель, описанная на семантическом уровне. Основным содержанием XML-тегов, описанных ниже, является формализованное представление параметров вычислительной модели, которое делает удобным передачу этих параметров численным методам. В принципе, такое представление можно получить и без теоретического описания модели, однако параметры вычислительной модели могут быть связаны с параметрами теоретической модели, которые обладают другими характеристиками и сгруппированы по смыслу, а не по математическим признакам. Кроме того, строгая формализация параметров позволяет универсальным образом описывать соотношения между параметрами в виде систем уравнений; в разделе Error: Reference source not found намеренно не предусмотрены функциональные соотношения между параметрами, поскольку способ их представления сильно зависит от предметной области.


EquationSet (EquationSetDescription?, MathBlock,ModelParametres, NumericalMethod)>



ModelParametres (ModelParam+)>

ModelParam (Param, ParamValue)



use_in IDREF #REQUIRED

type (in|out|calculated|regulated|constant|def) ”in”

>


Модель может иметь несколько систем уравнений, поэтому может быть несколько элементов EquationSet.


Каждый такой элемент в свою очередь содержит элементы EquationSetDescription (словесное описание данной системы), MathBlock (математические формулы на MathML), ModelParametres (параметры модели, использующиеся в численных методах) и NumericalMethod (численный метод, используемый для решения данной системы уравнений).


Элементы ModelParametres и ModelVariables имеют практически одинаковое название, но по содержанию они отличаются.

Элемент ModelParametres содержит внутренние параметры моделей, передающиеся численным методам.. Параметры внутри этого тега могут быть различными математическими объектами (вектор, матрица и т.п.) и не обязательно должны иметь числовые значения – они могут задаваться формулой.


Различные переменные вполне могут дублироваться в элементах ModelVariables и ModelParametres, но это никоим образом не опровергает объективных различий между этими элементами. В ModelVariables содержатся переменные, характеризующие систему моделей на теоретическом уровне, в то время как ModelParametres содержит параметры, участвующие в вычислительных операциях внутри модели.


Элемент ModelParametres состоит из нескольких элементов ModelParam.

Каждый элемент ModelParam включает в себя элементы Param (содержит имя параметра) и ParamValue (значение параметра).


Атрибут use_in элемента ModelParam ссылается на название метода или части этого метода, где данный параметр используется. Этот атрибут может ссылаться как на сами методы (например, use_in=”RungeKuttaMethod”), так и на их составные части (use_in=”ButcherTable”, например).


Атрибут type определяет тип параметра. К значениям этого атрибута, перечисленным в пункте Error: Reference source not found для элемента ModelVariables, добавилось значение “def” – type принимает это значение, когда параметр определяется математической формулой . По умолчанию type принимает значение ”in”.


ELEMENT Param (ci)>



overdetermined_name CDATA #IMPLIED>

ParamValue (cn | vector | matrix | apply)>


Элемент Param имеет атрибут overdetermined_name, который при необходимости переопределяет имя параметра, используемое в системе уравнений модели. Дело в том, что в численном методе зарезервированы имена для входящих в него переменных и они могут не совпадать с именем параметра, который модель передаёт численному методу.


Чтобы избежать двусмысленности и путаницы можно переопределять имена параметров с помощью атрибута overdetermined_name. Допустим, мы имеем систему уравнений, решаемую методом Рунге-Кутта, в которой искомым параметром является вектор p. Так как в нашем описании метода Рунге-Кутта выходным параметром является вектор v, то мы можем переопределить имя этой переменной следующим образом:


p

Элемент ParamValue содержит значение, которое модель передаёт численному методу.


Обратим внимание, что это может быть не только численное значение, но и матрица, вектор, вектор-функция, то есть любой математический объект. Описывается этот объект с помощью тегов MathML.