Класс: Функция Аппроксимация. Растворение
Пакет: Функциональная аппроксимация
Доступ к решению, найденному в процессе аппроксимации
other_solution = solutionfromID(solution,id)
возвращает решение, связанное с other_solution = solutionfromID(solution,id)FunctionApproximation.LUTSolution объект, solution, с идентификатором, указанным id.
solution - Объект решенияFunctionApproximation.LUTSolution объектОбъект решения, содержащий решение, которое требуется исследовать, указанный как FunctionApproximation.LUTSolution объект.
id - идентификатор решения;Идентификатор решения, которое требуется исследовать, указывается как скалярное целое число.
Типы данных: double
other_solution — FunctionApproximation.LUTSolution указано idFunctionApproximation.LUTSolution объектFunctionApproximation.LUTSolution объект, связанный с указанным идентификатором.
В этом примере показано, как использовать solutionfromID способ FunctionApproximation.LUTSolution изобретение позволяет исследовать другие аппроксимационные решения.
Создать FunctionApproximation.Problem объект, определяющий математическую функцию для аппроксимации. Затем используйте solve способ получения FunctionApproximation.LUTSolution объект.
problem = FunctionApproximation.Problem('sin')problem =
1x1 FunctionApproximation.Problem with properties:
FunctionToApproximate: @(x)sin(x)
NumberOfInputs: 1
InputTypes: "numerictype(0,16,13)"
InputLowerBounds: 0
InputUpperBounds: 6.2832
OutputType: "numerictype(1,16,14)"
Options: [1x1 FunctionApproximation.Options]
solution = solve(problem)
| ID | Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification | Error(Max,Current) | | 0 | 64 | 0 | 2 | 16 | 16 | EvenSpacing | 7.812500e-03, 1.000000e+00 | | 1 | 784 | 1 | 47 | 16 | 16 | EvenSpacing | 7.812500e-03, 5.388912e-03 | | 2 | 768 | 1 | 46 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.534419e-03 | | 3 | 608 | 1 | 36 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.089765e-03 | | 4 | 592 | 1 | 35 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.272461e-03 | | 5 | 416 | 1 | 24 | 16 | 16 | EvenSpacing | 7.812500e-03, 6.201693e-03 | | 6 | 400 | 1 | 23 | 16 | 16 | EvenSpacing | 7.812500e-03, 6.836819e-03 | | 7 | 224 | 0 | 12 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.013411e-02 | | 8 | 304 | 0 | 17 | 16 | 16 | EvenSpacing | 7.812500e-03, 1.887217e-02 | | 9 | 352 | 1 | 20 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.807773e-03 | | 10 | 320 | 0 | 18 | 16 | 16 | EvenSpacing | 7.812500e-03, 1.695679e-02 | | 11 | 336 | 1 | 19 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.810061e-03 | | 12 | 64 | 0 | 2 | 16 | 16 | EvenPow2Spacing | 7.812500e-03, 1.315166e+00 | | 13 | 576 | 1 | 18 | 16 | 16 | ExplicitValues | 7.812500e-03, 7.803448e-03 | | 14 | 512 | 0 | 16 | 16 | 16 | ExplicitValues | 7.812500e-03, 1.190175e-02 | | 15 | 576 | 1 | 18 | 16 | 16 | ExplicitValues | 7.812500e-03, 7.803448e-03 | Best Solution | ID | Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification | Error(Max,Current) | | 11 | 336 | 1 | 19 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.810061e-03 |
solution =
1x1 FunctionApproximation.LUTSolution with properties:
ID: 11
Feasible: "true"
Отображение всех возможных решений, найденных в процессе аппроксимации.
displayfeasiblesolutions(solution)
| ID | Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification | Error(Max,Current) | | 1 | 784 | 1 | 47 | 16 | 16 | EvenSpacing | 7.812500e-03, 5.388912e-03 | | 2 | 768 | 1 | 46 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.534419e-03 | | 3 | 608 | 1 | 36 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.089765e-03 | | 4 | 592 | 1 | 35 | 16 | 16 | EvenSpacing | 7.812500e-03, 4.272461e-03 | | 5 | 416 | 1 | 24 | 16 | 16 | EvenSpacing | 7.812500e-03, 6.201693e-03 | | 6 | 400 | 1 | 23 | 16 | 16 | EvenSpacing | 7.812500e-03, 6.836819e-03 | | 9 | 352 | 1 | 20 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.807773e-03 | | 11 | 336 | 1 | 19 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.810061e-03 | | 13 | 576 | 1 | 18 | 16 | 16 | ExplicitValues | 7.812500e-03, 7.803448e-03 | | 15 | 576 | 1 | 18 | 16 | 16 | ExplicitValues | 7.812500e-03, 7.803448e-03 | Best Solution | ID | Memory (bits) | Feasible | Table Size | Breakpoints WLs | TableData WL | BreakpointSpecification | Error(Max,Current) | | 11 | 336 | 1 | 19 | 16 | 16 | EvenSpacing | 7.812500e-03, 7.810061e-03 |
Решение с идентификатором 5 не указано в таблице в качестве возможного решения. Изучите это решение, чтобы выяснить, почему оно неосуществимо.
solution5 = solutionfromID(solution, 5)
solution5 =
1x1 FunctionApproximation.LUTSolution with properties:
ID: 5
Feasible: "true"
Сравните численное поведение решения с идентификатором 5.
compare(solution5)

ans = struct with fields:
Breakpoints: [51473x1 double]
Original: [51473x1 double]
Approximate: [51473x1 double]
На графике видно, что решение не соответствует требуемым допускам.
FunctionApproximation.LUTMemoryUsageCalculator | FunctionApproximation.LUTSolution | FunctionApproximation.Options | FunctionApproximation.ProblemИмеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.