- •1. Общие сведения. Ядро и интерфейс пакета Математика
- •2. Точные и приближенные вычисления. Численные и аналитические операции
- •3. Рабочий документ и ячейки. Основные команды
- •4. Сеанс работы в системе Математика. Глобальный характер данных
- •5. Правила написания. Основные встроенные функции
- •Примеры выражений
- •Формы обращений к функциям
- •Нескольких аргументов
- •6. Функции комплексного аргумента
- •Логические операторы
- •7. Циклические операции
- •7.1. Цикл For
- •7.2. Цикл While
- •7.3. Цикл Do
- •7.4. Функция If
- •7.5. Логические выражения
- •8. Функции пользователя. Составление программ
- •8.1. Функции пользователя. Описания типов аргументов
- •8.2. Немедленное и задержанное присваивание
- •8.3. Альтернативные определения функций
- •8.4. Составление программ. Глобальные и локальные переменные
- •8.5. Прерывание вычислений
- •9. Списки
- •9.1. Создание списков. Обращение к элементам списков
- •9.2. Преобразование списков
- •9.3. Матричные функции
- •10. Массивы
- •1 1. Основные типы графиков
- •11.1. Двумерные графики
- •11.2. Функции Show, GraphicsRow, GraphicsGrid. Графические примитивы.
- •11.3. Изображения трехмерных объектов
- •11.4. Анимация
- •12. Функция Manipulate
- •13. Аналитические операции. Интерполяция. Решение уравнений
- •13.1. Аналитические операции
- •13.2. Интерполяция
- •13.3. Решение алгебраических уравнений
- •13.4. Решение дифференциальных уравнений
- •14. Преобразование выражений
- •14.1. Стандартная форма выражений
- •Примеры выражений
- •14.2. Обращение к элементам выражений
- •14.3. Представление выражения в виде дерева
- •14.4. Операции преобразования выражений
- •14.5. Повторное выполнение операций
- •14.6. Анонимные функции
- •14.7. Функциональные операторы Outer и Inner
- •Вопросы для повторения
- •Массивы.
- •Функция Manipulate.
- •Упражнения
14.7. Функциональные операторы Outer и Inner
Функциональный оператор Outer[f, list1, list2] называют обобщенным произведением. Оператор применяет функцию f ко всем сочетаниям элементов списков list1, list2.
Пример14.17
In[ ] := Outer[f, {a, b}, {1, 2}] Out[ ] = {{f[a, 1], f[a, 2]}, {f[b, 1], f[b, 2]}}
Пример14.18
Вычисление матрицы частных производных.
In[ ] := ( jac[f_List, v_List] := Outer[D, f, v];
fun = {x^2 + 3 y, Sin[x] – Cos[y]}; var = {x, y}; jac[fun, var] )
Out[ ] = {{2 x, 3}, {Cos[x], Sin[y]}}
Оператор Inner[f, list1, list2, g] в отличие от оператора Outer составляет сочетания элементов, стоящих на одинаковых местах в списках list1, list2. К этим сочетаниям оператор применяет функцию f, а затем к списку результатов применяет функцию g, либо просто суммирует результаты, если функция g не указана.
Пример14.19
In[ ] := Inner[Plus, {a, b}, {1, 2}, Times] Out[ ] = (1 + a) (2 + b)
Пример14.20 Найдем скалярное произведение двух векторов:
In[ ] := Inner[Times, {a, b}, {c, d}] Out[ ] = a c + b d
Вопросы для повторения
Основные части пакета Математика.
Точные и приближенные вычисления.
Операции с ячейками: объединение и разделение ячеек, группирование ячеек. Скрытие содержания группы ячеек.
Глобальный характер данных в течение сеанса работы в пакете Математика. Обращение к ячейкам. Удаление данных.
Правила написания. Малые и большие буквы. Запись операции умножения. Употребление скобок.
Наиболее часто употребляемые операции и функции. Тригонометрические функции. Экспоненциальная функция и логарифм. Вычисление пределов. Правило преобразования. Функция замещения. Вычисление производных. Численное и аналитическое интегрирование. Нахождение минимумов и максимумов. Циклические операции суммирования и умножения. Функция Fit. Функция Print. Получение информации о функциях.
Стандартная, префиксная и постфиксная формы обращения к функциям. Приоритеты обращений.
Циклические операции: For, While и Do. Логические операторы. Функция If.
Функции пользователя. Операции немедленного и задержанного присваивания. Шаблоны для описания типов аргументов.
Альтернативные определения функций на разных отрезках значения аргумента. Функция Which.
Составление программ. Конструкция Module.
Понятие списка. Простой способ определения списка. Функции Range и Table. Операции с элементами списков. Определение векторной функции. Матричные функции.
Массивы.
Графики. Создание двумерного графика Plot. Основные опции графиков. Установление одинакового масштаба по осям координат. Другие типы графиков: ListPlot, PolarPlot, параметрические графики, трехмерные графики. Функция Show. Массив графиков.
Функция Manipulate.
Аналитические операции: Series, Expand, Simplify и др.
Решение уравнений. Функции: Solve, LinearSolve, Roots, FindRoot.
Решение дифференциальных уравнений. Функции: DSolve, NDSolve.
Преобразование выражений. Представление выражений в разной форме: FullForm, TreeForm. Уровни выражения. Операции с элементами выражений. Операции с заголовками выражений.
Функциональные операторы: Apply, Map. Повторное выполнение операций; операторы:
NestList, FixedPointList, NestWhileList.
Анонимные функции. Применение анонимных функций совместно с циклической обработкой выражений.
Оператор Outer.