Иллюстрированный самоучитель по MatLab

Дескрипторная поддержка параметров решателя

При помощи перечисленных ниже функций можно получить и создать или изменить параметры решателя:

  • o=odeget(options, 'name') – извлекает значение свойства, определенного строкой 'name', из структуры параметров options; возвращает пустую матрицу, если значение данного свойства в структуре options не определено. Можно ввести только первые буквы, которые однозначно определяют имя свойства. Пустая матрица [ ] – допустимый аргумент options;

Пример:

>> options = odesetCRelTol,[le-6 le-7].'AbsTol',6e-3);
>> odeget(options.'Rel')
ans =
1.0e-006*
1.0000 0.1000
>> odegetCoptions.'Abs')
ans =
0.0060
  • options=odeset('namel'.valuel, 'name2',value2,…) – создает структуру параметров, в которой указанные свойства по имени ' name…' принимают следующие за ними значения. Вместо 'name…' можно ввести только первые буквы, которые однозначно определяют имя свойства (abs – Abstol, inaxit – maxiter и т. д.);
  • options=odeset (ol dopts, newopts) – изменяет существующую структуру параметров oldopts путем объединения ее с новой структурой newopts. Все новые параметры, не равные пустой матрице, заменяют соответствующие параметры в структуре oldopts;
  • options=odeset(ol dopts, 'namel'.valuel,…) – изменяет в существующей структуре параметров соответствующие значения. Пример:
oldopts
F 1 [ ] 4 'S' 'S' [ ] [ ] [ ]
newopts
T 3 F [] 'S' [] [] [] []
odeset(oldopts.newopts)
T 3 F. 4 ' ' 's' [ ] [ ] [ ]

Функция odeset без параметров возвращает все имена свойств и их допустимые значения.

Пример:

>> odeset
AbsTol: [ positive scalar or vector {le-6} ]
RelTol: [ positive scalar {le-3} ]
NormControl: [ on | {off} ]
OutputFcn: [ function ]
OutputSel: [ vector of integers ]
Refine: [ positive integer ]
Stats: [ on | {off} ]
InitialStep: [ positive scalar ]
MaxStep: [ positive scalar ]
BDF: [ on | {off} ]
MaxOrder: [ 1 | 2 | 3 | 4 | {5} ]
Jacobian: [ matrix | function ]
JPattern: [ sparse matrix ]
Vectorized: [ on | {off} ]
Mass: [ matrix | function ] MStateOependence: [ none | weak | strong ]
MvPattern: [ sparse matrix ]
MassSingular: [ yes | no | {maybe} ]
InitialSlope: [ vector ] Events: [ function ]
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.