|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
"взаимосвязанные" 3Д графики11.10.2013, 21:43. Показов 1664. Ответов 17
Метки нет (Все метки)
Можно ли(и как) сделать в матлабе так, чтобы имелся один 3Д график, скажем, с положительными значениями, а под ним - вертикальная поверхность, образованная кривой в плоскости XY, то есть как бы продемонстрировать криволинейный интеграл и площадь, которую он вычисляет. Но проблема не только в том, чтобы начертить эти две плоскости, а в том, чтобы задать границу вертикальной плоскости, чтобы она не выходила за пределы первоначального графика, когда основная функция не задана. Программу необходимо сделать в виде функции, чтобы можно было её применить к любой заданной функции, чтобы вычислить криволинейный интеграл(здесь можно кривую сделать достоянием функции, то есть интеграл будет вычислятся постоянно по одной и той же кривой).
То есть, меня интересует как сделать так, чтобы плоскость заканчивалась там, она пересекается с графиком заданной функции. P. S. Я не прошу писать за меня функцию, а только подсказать, как сделать описанный выше момент, с учётом того, что функция будет задаваться какая угодно или в крайнем случае положительная
0
|
|
| 11.10.2013, 21:43 | |
|
Ответы с готовыми решениями:
17
Взаимосвязанные поля Взаимосвязанные поля Взаимосвязанные таблицы |
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
| 15.10.2013, 13:16 [ТС] | |
|
Вот так:
Я хочу написать функцию, которая бы высчитывала криволинейный интеграл, а потом показывала на картинке площадь чего именно интеграл посчитал. f(x.y) криволинейный интеграл, которой будет вычисляться, я бы хотел, чтобы была задана вне функции, то есть обращаешься к функции вычисления интеграла, задаешь какую-нибудь,например, положительную f(x.y), функция считает интеграл и показывает на картинке что она посчитала
0
|
|
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
| 15.10.2013, 13:56 [ТС] | |
|
Посчитать площадь это уже второстепенная задача, я думаю я с ней сам могу справится, но то, что я не знаю как сделать - это нарисовать вот это для любой заданной верхней функции. Кривая будет постоянной, то есть меняться будет только граница плоскости.
То есть задача такая: иллюстрировать для любой функции геометрическое значение криволинейного интеграла, показать, чего именно площадь находится
0
|
|
|
|
||||||
| 15.10.2013, 16:14 | ||||||
|
Вот загтовка:
(но копать можно в строну patch и fill3)
1
|
||||||
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
| 15.10.2013, 16:30 [ТС] | |
|
Спасибо
Матлаба дома нет, на днях попробую в универе и отпишусь, может быть уже целой программой ![]() А что такое @(x)?
0
|
|
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
||||||
| 15.10.2013, 20:16 [ТС] | ||||||
|
Не уверен, но может быть можно сделать так?
<...>
C коэфициентами я, по-моему, что-то напутал. Не суть важно. Идея понятна
0
|
||||||
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
||||||
| 17.10.2013, 14:10 [ТС] | ||||||
|
Ну-с, мне удалось это сделать
![]()
![]() Спасибо за помощь
0
|
||||||
|
|
||||||
| 17.10.2013, 16:07 | ||||||
|
А я сообразил, как посчитать интеграл вдоль прямой
![]() Поясни только твою идею, для чего ты делал кучу циклов?
0
|
||||||
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
| 18.10.2013, 12:56 [ТС] | |
|
Интеграл довольно лёгкая вещь, я его сделал правда опять циклами и увеличил точность с помощью ромберга
![]() А как без циклов? Я просто посрезал верхушки у матрицы, где её значение больше значения поверхности в этой точке. Если и можно как-то иначе записать, то я не знаю, я новичок в матлабе и делаю всё по старинке с помощью циклов
0
|
|
|
|
||||||
| 18.10.2013, 16:28 | ||||||
|
Ан, нет
таки победил
Как видишь, я добавил строки 21-25 и обошлось без цикла (хотя поначалу он там был, один), суть которых создать двустолбцовые матрицы x1,y1,z1, первый столбец для z1=0, а второй - для z1 = F(x,y), таким образом как раз и получаем нужную поверхность
2
|
||||||
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
|
| 18.10.2013, 19:19 [ТС] | |
|
Ага, то есть z1 везде имеет только два значения. Действительно красиво, ничего не скажешь
![]() Интеграл я, правда, посчитаю сложнее и длинее
0
|
|
|
|
||
| 18.10.2013, 19:56 | ||
![]() *точность моего метода (метод трапеций) можно менять шагом массива t ** есть в матлабе еще хорошая и точная функция интегрирования quad, но для нее нужно аналитическое выражение
0
|
||
|
11 / 11 / 2
Регистрация: 01.05.2013
Сообщений: 96
|
||||||||||||||||
| 22.10.2013, 19:33 [ТС] | ||||||||||||||||
|
Вот и доделал программу. Можно было бы ещё улучшить, например ромберга сделать с помощью апроксимации, так же кривую можно было бы задавать не только с переменной х, но и параметрически, но мне уже не хочется больше ей заниматься.
![]() А третm. часть программы, сам рисунок, я слегка модернизировал:
1
|
||||||||||||||||
|
|
|
| 23.10.2013, 08:17 | |
|
а она с ручным вводом функции разве работает?
![]() обычно делают так: Matlab M str = input('Введите функцию F(x,y)=','s'); %считываем текстовую строку F = inline(str); %создаем функцию из строки
0
|
|
| 23.10.2013, 08:17 | |
|
Помогаю со студенческими работами здесь
18
Взаимосвязанные списки Взаимосвязанные списки Взаимосвязанные перечисления Взаимосвязанные расчеты Взаимосвязанные таблицы на 2-5 листах Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|