Математический форум Math Help Planet
Обсуждение и решение задач по математике, физике, химии, экономике Теоретический раздел |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
новый онлайн-сервис число, сумма и дата прописью |
|
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Страница 1 из 1 |
[ Сообщений: 8 ] |
|
Автор | Сообщение | ||
---|---|---|---|
Dispaired |
|
||
- графика функции, который входит в нелинейное уравнение; - вертикально расположенной таблицы табуляции функции с последующей шапкой; - списка найденных отрезков локализации". С таблицей я еще как-нибудь разберусь, график уже построен, а вот значения я не знаю как найти. С отрезками локализации я просто ввел для первого: [-2:0.01:2], для второго [0:0.01:2]. В общем, возможно их надо было тоже искать, а это вообще не нужно. Вот получившийся код: Первое уравнение (функция, его описывающая): function z = FEQ(x) Второе уравнение (функция, его описывающая) function z = SEQ(x) Функция половинного деления function y = SOL(f,eps,a,b,i) Выше единственная рабочая версия кода, который я откопал, но с ним значения корней не те. В методичке есть описание этого метода, но он вызывает ошибку, как только исполняется программа. Сам этот метод я не понимаю, преподаватель отказывается помогать. Код окна команд: k=menu('Выбор', 'Решить первое уравнение', 'Решить второе уравнение'); Хотелось бы понять, что к чему и как решается эта задача. Как перепробовавшему многое глупому и неопытному человеку, мне остается только искать помощи здесь. |
|||
Вернуться к началу | |||
michel |
|
||
Может быть дело в том, что параметры функции SOL, которые задаются извне, затираются вот этим фрагментом внутри самой функции?
|
|||
Вернуться к началу | |||
За это сообщение пользователю michel "Спасибо" сказали: Dispaired |
|||
Dispaired |
|
||
Так дело в том, что без обозначения переменных при исполнении программа просто выбивает ошибку, ввиду недостатка данных о переменных в цикле while. С этим фрагментом оно хоть как-то да компилируется. Вот такой пример у меня в методичке: "
function z=CutAndTry(f, а,b,eps) " x1=-1; Это пример был, то есть он должен компилироваться, но увы, в матлабе просто выбивает ошибку в строчке цикла, так как значения переменных не указаны, а сам цикл требует завершения "end", в строчке где вторичная функция пропущен x^2. Так что я даже не знаю, как... |
|||
Вернуться к началу | |||
michel |
|
||
Теперь понятно, почему Вы поставили в начале вызов f=inline(), вызовы функции f(x) внутри оператора цикла надо переделать, например: вместо f(c) поставьте feval(f,c).
|
|||
Вернуться к началу | |||
За это сообщение пользователю michel "Спасибо" сказали: Dispaired |
|||
Dispaired |
|
||
Код все тот же, разве что f(c) заменил на feval(f,c). Вот что выдает, если убрать задание значения переменным. https://ibb.co/zRbg1mQ, , . Не знаю где будет лучше видно, поэтому загрузил разными способами.
|
|||
Вернуться к началу | |||
Emphatic18 |
|
||
Матлаб не знаю, хотя есть Octave, эти программы очень похожи, возможно поможет разобраться с вашим вопросом. Допустим нужно решить нелинейное уравнение методом дихотомии.
Создадим функцию function y = fun(x) создадим еще одну функцию - решатель function y = dihotomy(eps,a,b) сохраняем их под соответствующими именами fun.m и dihotomy.m далее вводим в командной строке Код: >> a = 0; >> b = 2; >> eps = 0.0001; >> root=dihotomy(eps,a,b); >> disp (root) 1.4142 или так (без точки с запятой) Код: >> dihotomy(eps,a,b) ans = 1.4142 >> ps Очень важно правильно использовать синтаксис, понимать что куда передается и откуда приходит. |
|||
Вернуться к началу | |||
За это сообщение пользователю Emphatic18 "Спасибо" сказали: Dispaired |
|||
michel |
|
|
Dispaired писал(а): Код все тот же, разве что f(c) заменил на feval(f,c). Вот что выдает, если убрать задание значения переменным. https://ibb.co/zRbg1mQ, , . Не знаю где будет лучше видно, поэтому загрузил разными способами. Очень плохо виден скрин, но удалось разобрать (с лупой)! У Вас вызов функции не соответствует ни числу параметров, ни его порядку: SOL('SEQ',x,epsilon), а надо было так: SOL('SEQ',a,b,epsilon) Разумеется, что все эти параметры должны заданы перед вызовом функции SOL. |
||
Вернуться к началу | ||
За это сообщение пользователю michel "Спасибо" сказали: Dispaired |
||
Dispaired |
|
||
Ага, с этим разобрался. Оказывается число параметров в самой программе не совпадало, меня это немного сбивало с толку из-за "х". Я х=[x1:0.01:x2] делал, а теперь понимаю, что так нельзя. Теперь бы узнать, как точки совпадения графиков вывести в отдельные переменные.
https://ibb.co/HhmrdNp |
|||
Вернуться к началу | |||
[ Сообщений: 8 ] |
Похожие темы | Автор | Ответы | Просмотры | Последнее сообщение |
---|---|---|---|---|
Формула половинного угла. Откуда минус?
в форуме Тригонометрия |
1 |
335 |
19 мар 2017, 16:46 |
|
Остаток от деления
в форуме Теория чисел |
2 |
294 |
16 дек 2020, 08:48 |
|
Остаток от деления
в форуме Начала анализа и Другие разделы школьной математики |
9 |
657 |
21 июн 2016, 09:40 |
|
Остаток от деления
в форуме Теория чисел |
1 |
424 |
09 июн 2018, 00:44 |
|
Остаток от деления
в форуме Теория чисел |
2 |
289 |
21 дек 2020, 20:32 |
|
Доказательство деления
в форуме Алгебра |
13 |
677 |
10 янв 2017, 06:09 |
|
Остаки от деления. ЗНО
в форуме Алгебра |
9 |
605 |
07 янв 2018, 19:18 |
|
Где открыть тему деления на 0?
в форуме Размышления по поводу и без |
40 |
1147 |
26 апр 2017, 08:00 |
|
Отстаток от деления суммы
в форуме Теория чисел |
9 |
253 |
10 фев 2021, 19:17 |
|
Остаток от деления многочленов | 1 |
518 |
05 апр 2014, 13:13 |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5 |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |