Записи с меткой «ряде»

Функции задания формата

Функции задания формата

  • CForm[expr] — выполняет вывод ехрг в форме, принятой для языка С.
  • ColonForm[a,b] — выводит в виде а:b.
  • ColumnForm[ {el, e2,…} ] — дает вывод в виде столбца с el над е2 и т.д.
  • ColumnForm[list, horiz] — при выводе дает горизонтальное выравнивание каждого элемента.
  • ColumnForm[list, horiz, vert] — при выводе дает как горизонтальное, так и вертикальное выравнивание всего столбца.
  • FontForm[expr, {"font", size}] — устанавливает шрифт "font" и размер size, с которыми выводится выражение ехрг.
  • Format [ехрг] — выводит ехрг в форматированном виде.
  • Format [expr, type] — возвращает формат для указанного типа type.
  • InputForm[expr] — выводит ехрг во входной форме.
  • NumberForm[expr, n] — выполняет вывод приближенного представления вещественного значения ехрr с точностью до n цифр.
  • OutputForm[expr] — выполняет вывод ехрr в стандартной выходной форме системы Mathematica.
  • PaddedForm[expr, n] — выводит все числа ехрr, заполняя оставшиеся места так, чтобы каждое число содержало n знаков.
  • PaddedForm[expr, {n, f} ]—выводит ехрг с приближенными вещественными числами, имеющими ровно f цифр справа от десятичной точки.
  • PrecedenceForm[expr, prec] — выводит выражение ехрг, заключенное в скобки так, как если бы оно содержало оператор с приоритетом ргес.
  • Prefix [f [ехрг] ] — выводит функцию f [ехрг] в префиксной форме: f @ ехрг.
  • Prefix [f [ехрг] , h] — выводит функцию f [ехрг] с заголовком h, то есть как hexpr.
  • $ Print Forms — является списком базисных форм вывода. Он автоматически обновляется при создании описаний Format, использующих новые формы вывода.
  • TextForm[expr] — выполняет вывод ехрг в обычном текстовом формате.
  • Unevaluated [ехрr] — представляет невычисляемую форму выражения ехрг, когда оно используется как аргумент функции.

Для функции Number Form и родственных функций используется ряд опций:

  • DigitBlock — указывает максимальную длину групп разрядов при использовании разделителей.
  • FormatType — указывает тип формата по умолчанию при выводе выражений.
  • NumberFormat — указывает, как мантисса, основание и порядок должны быть скомпонованы в конечную форму вывода.
  • NumberPadding — задает символы, которые будут использоваться для заполнения с левой и правой сторон числа.
  • NumberPoint— задает строку для использования в качестве десятичной точки.
  • NumberSeparator — задает строку для вставки между группами разрядов.
  • Right — используется для указания правостороннего выравнивания в таких формах вывода, как ColumnForm и TableForm.

Дополнительные функции и опции ввода/вывода

  • Attributes [symbol] — возвращает список атрибутов символа symbol.
  • Bastchlnput — возвращает True, если ввод в текущем сеансе работы производится непосредственно в ядро системы в пакетном режиме, и False в противном случае.
  • $BatchOutput — возвращает True, если вывод в текущем сеансеработы пересылается в пакетном режиме и пригоден для чтения другими программами, и False в ином случае.
  • Characters ["string"] — возвращает список символов в строке.
  • Dialog[ ]— инициирует диалог (часто используется совместно с функцией Return).
  • Dialog [ехрг] — инициирует диалог с использованием ехрг как текущего значения.
  • Dialoglndent [d] — возвращает величину отступа для строк ввода и вывода, которая используется в диалогах с глубиной вложенности d.
  • FullDefinition [s1, s2,…] — выводит определения, присвоенные символам si и всем символам, от которых данные символы зависят.
  • Information [symbol] — выводит информацию о символе symbol.
  • $ Input — глобальная переменная, значением которой является имя потока, из которого Mathematica в данный момент ожидает поступления входной информации.
  • $ Language — является списком строк, которые дают названия языков, используемых для сообщений.
  • Normal [ехрг] — преобразует ехрг из ряда специальных форм в нормальное выражение.
  • Out [n] — глобальный объект, соответствующий выводу, произведенному в и-й выходной строке (ячейке).
  • % — возвращает последний произведенный результат.
  • % % — возвращает предпоследний результат.
  • %%…% (k раз) — возвращает k-й предшествующий результат.
  • %k — возвращает результат из k-й выходной строки (абсолютная адресация).
  • Shallow [ехрг] — выводит первые четыре уровня ехрг, за исключением частей ехрг, длина которых превышает 10. Остальные части выводятся в структурной (скелетной) форме.
  • Shallow [expr, depth] — выводит части выражения ехрг до указанной глубины depth. Остальные части выводятся в структурной (скелетной) форме.
  • Shallow [expr, {depth, length}] — возвращает в структурной (скелетной) форме также и те части, длины которых выше указанного предела length.
  • Shallow[expr, {depth, length}, form] — использует скелетную форму для любых частей выражения, сопоставимых с указанным шаблоном form.
  • Short [expr] — выводит краткую форму ехрг, не превышающую длину одной строки.
  • Short [expr, n] — выводит ехрг в форме длиной около n строк.
  • SpaceFormfn] — выводит n пробелов.

Некоторые из этих функций используют приведенные ниже опции:

  • Above — опция, используемая для установки выравнивания в таких формах вывода, как ColumnForm и TableForm.
  • Bottom— является возможным значением опции TableAlignments для TableForm.
  • Below — используется для указания выравнивания в таких формах вывода, как ColumnForm и TableForm.
  • Center — устанавливает выравнивание в таких формах вывода, как Column-Form и TableForm.
  • DialogProlog — опция для Dialog, которая позволяет вычислить выражение до начала диалога.
  • DialogSymbols — опция для Dialog, которая возвращает список символов, чьи значения будут локализованы в диалоге.
  • Heads — опция для функций, которые используют спецификации уровня, указывающая, следует ли включать заголовки выражений.
  • IgnoreCase — опция для функций манипулирования строками и функций поиска, которая указывает, следует ли считать прописные и строчные буквы эквивалентными.
  • SignPadding — опция для NumberForm и родственных функций, указывающая, что заполнитель (если он используется) должен размещаться после знака числа.

Приведем примеры использования этих форм вывода.

Ввод (In)

Вывод (Out)

Dialog [] ^n Return [a+b+c]

(a+b+c) n

Dialog []*y Return [x]

xy

Shallow [Exp [х ^ (a/b) ] /x/a]

e Power[ /ax

Short [Exp [х ^ (a/b) ] /x/a, 1]

e x^a/b /ax

В этих примерах надо обратить особое внимание на применение функции Dialog. При ее начальном вызове строка вывода не формируется. Она появляется после исполнения ячейки ввода с функцией Return, причем ячейки ввода в пределах тела диалога нумеруются так: (Dialog) In[n]:=.

Опции численного интегрирования

Опции численного интегрирования

  • AccuracyGoal — указывает число цифр, задающих точность промежуточных результатов.
  • Compiled — указывает на возможность компиляции функции.
  • GaussPoints — устанавливает количество точек в гауссовой части квадратуры Гаусса—Кронрода.
  • MaxPoint — задает максимальное число точек при интегрировании.
  • MaxRecursion — задает максимальную глубину рекурсии.
  • Method -> DoubleExponential — назначает для использования алгоритм двойной экспоненциальной сходимости.
  • Method -> MultiDimensional — назначает для использования многомерный алгоритм. Имеет смысл только для интегрирования кратных интегралов.
  • Method -> GaussKronrod — выбирает для использования адаптивную квадратуру Гаусса—Кронрода. При многомерном интегрировании GaussKronrod обращается к декартову произведению одномерных квадратурных формул Гаусса—Кронрода.
  • Method -> Trapezoidal — назначает для решения рекурсивный метод трапеций. Он особенно успешен, если подынтегральная функция периодична и интервал интегрирования составляет точно один период. Для многомерного интегрирования данный метод обращается к декартову произведению одномерных правил трапеций.
  • MinRecursion — задает минимальную глубину рекурсии.
  • PrecisionGoal — задает погрешность вычислений.
  • SingularityDepth — указывает, насколько глубокая рекурсия допустима перед тем, как начинается изменение переменной на границах интервала интегрирования.

Прочитать остальную часть записи »

Дополнительные функции для работы со списками

Дополнительные функции для работы со списками

  • Accumulate [f, g [el, e2,…]] —возвращает g[el,f [el,e2] , f'[f [el,e2] ,e3 ],…].
  • Cases [{el, e2,…}, pattern] — возвращает список тех ei, которые соответствуют заданному шаблону pattern.
  • Cases [ {el,…}, pattern -> rhs] или Cases [ {el,…}, pattern :> rhs] — возвращает список значений rhs, соответствующих тем ei, которые подходят под шаблон pattern.
  • CoefficientList [poly, var] — возвращает список коэффициентов перед степенями переменной var в полиноме poly, начиная со степени 0.
  • CoefficientList [poly, {varl, var2,…}] — возвращает матрицу коэффициентов vari.
  • $CommandLine — список строк, возвращающий элементы командной строки, с помощью которой была вызвана Mathematica.
  • Compose [а, b, с, d] — возвращает а [b [с [d] ]].
  • ComposeList [ {f I, f2,…}, х] — формирует список формы {x,fl[x],
  • ComposeSeries [s, t, u,…] — объединяет степенные ряды, подставляя в ряд s ряд t, затем ряд и и т. д. Ряды (исключение для первого элемента) должны начинаться положительной степенью переменной.
  • Composition [f1, f2, f3,…] — представляет композицию функций fl, f2, f 3, …
  • FoldList[f, x, {a, b,…}]—возвращает {x, f [x, a] , f [f [x, a] ,b],…}.
  • HeadCompose [a, b, c, d] — возвращает a [b] [c] [d].
  • bistable — атрибут, который может назначаться символу f для указания того, что если функция f получит аргумент (аргументы) в виде списка, то и результатом будет являться список.
  • MemberQ [list, form, levelspec] — тестирует все части списка list, определяемые спецификацией уровня levelspec.
  • Partition [list,n] — разбивает список list на неперекрывающиеся части длиной п. Если количество элементов в списке не делится нацело на п, то последние k (k < п) элементов удаляются.
  • Partition [list, n, d] — как и предшествующая функция, дает разбиение списка, но со сдвигом между соседними подсписками, равным d. При d<n подсписки перекрываются.
  • Permutations [list] — генерирует список всех возможных перестановок элементов в списке list.
  • Position [expr, pattern] — возвращает список позиций в ехрг, в которых размещаются объекты, сопоставимые с указанным шаблоном pattern.
  • Position [expr, pattern, levspec] — выполняет поиск только объектов, находящихся на уровнях, указываемых levspec.
  • RealDigits [x] — возвращает список цифр в приближенном вещественном числе х вместе с количеством цифр слева от десятичной точки, присутствующих в научной записи числа.
  • RealDigits [x,b] — возвращает список цифр числа х по основанию Ь.
  • Signature [list] — дает сигнатуру перестановки, необходимой для размещения элементов списка list в каноническом порядке.
  • SingularValues [m] — возвращает особое значение декомпозиции для чис-ловой матрицы т. Результатом будет список {u, w, v}, где w — список ненулевых особых значений, а исходная матрица m может быть записана как Соп-jugate[Transpose[u]].DiagonalMatrix[w].v.
  • SequenceLimit [list] — возвращает по эпсилон-алгоритму Винна аппроксимацию предела последовательности, первые несколько членов которой зада-. ны в виде списка list. Этот алгоритм может давать конечные значения для расходящихся последовательностей.
  • SubValues [f ] — возвращает список правил преобразования, относящихся ко всем подзначениям (значениям для f [х,…][…] и т.д.), определенным для символа f.
  • $SuppressInputFormHeads — представляет собой список заголовков тех выражений, чьи Input Form не должны автоматически пересылаться в программный препроцессор.

Функции расширения списков нулями
PadLeft[list] PadLeft[list,n]
PadLeft[list,f,n] PadRight[list]
PadRight[list,n]
PadRightLeft[list,n]
Примеры их применения:

  • PadLeft [ {a,b, с}, 6] — возвращает список {0, 0, 0, a,b, с}.
  • PadRight [ {a,b, с}, 6] — возвращает список {а,b, с, 0, 0,0}.

Дополнительные матричные функции

  • MatrixExp [m] — возвращает экспоненциал матрицы m.
  • MatrixPower [m, n] — возвращает п-ю степень матрицы m.
  • MatrixQ [ехрг] — возвращает True, если ехрг является списком списков, который может представлять матрицу, иначе возвращает False.
  • MatrixQ [expr, test] — возвращает True, только если test дает True в применении к каждому элементу матрицы в ехрг.
  • Minors [m, k] — возвращает матрицу, составленную из определителей всех kxk субматриц m.
  • NullSpace [m] — возвращает список векторов, которые формируют базис для нулевого пространства матрицы m
  • Pivoting — опция, относящаяся к функциям декомпозиции матрицы; указывает, что должен выполняться поворот столбца. Результат имеет форму {Q, R, Р}, где Р — матрица перестановок, такая что имеет место соотношение M.P=Conjugate [Transpose [Q] ] .R, где М— начальная (исходная) матрица.
  • Pseudolnverse [m] — ищет псевдообратную матрицу для прямоугольной матрицыm.
  • QRDecomposition [m] — возвращает QR-разложение (декомпозицию) для числовой матрицы m. Результат представляет собой список {q, r), где q — ортогональная матрица, r — верхняя треугольная матрица.

ZeroTest — опция для LinearSolve и других линейных алгебраических функций; дает функцию для применения ее к сочетаниям (комбинациям) из матричных элементов с целью определения, следует ли полагать их равными нулю.

Представление полей в пространстве — PlotField3D

Представление полей в пространстве — PlotField3D
Для представления векторных полей в пространстве служат функции подпакета PlotField3D:

  • PlotVectorField3D[{fx,fy,fz},{x,xmin,xmax},{y,ymin, ymax}, {z, zmin, zmax} ] — строит график векторного поля параметрически заданной трехмерной фигуры;
  • PlotGradientField3D[{fx,fy,fz},{x,xmin,xmax},{y,ymin,ymax}, {z, zmin, zmax} ] — строит график градиента векторного поля параметрически заданной трехмерной фигуры.

Эти функции подобны описанным в предшествующем разделе, но используются для построения векторных полей не на плоскости, а в пространстве. Рисунок показывает пример такого построения.
Как видно из, векторное поле строится отрезками прямых, а не стрелками. Последнее связано с тем, что по умолчанию задана опция VectorHeads-> False. Изменив ее на VectorHeads->True, можно получить представление векторного поля направленными стрелками. Кроме того, используя опцию Plot-Points->n, можно получить заданное число стрелок п по всем направлениям графика. Все это учтено на графике, представленном на.
В подпакете PlotFieldSD имеется еще одна функция:

  • ListPlotVectorField3D[{ {ptl, vectl}, {pt2, vect2 },…} ] -строит график векторного поля в пространстве по данным векторов vecti, расположенных в точках pti.

Рисунок поясняет применение этой функции.
Нетрудно заметить, что при большом числе векторов в пространстве графики этого типа теряют наглядность. далее…

Построение графиков неявных функций — ImplicitPlot

Построение графиков неявных функций — ImplicitPlot
Подпакет ImplicitPlot задает три варианта функции для построения графиков неявно заданных функций:

  • ImplicitPlot [eqn, {x, xmin, xmax} ] — построение функции, неявно заданной уравнением eqn, при х, меняющемся от xmin до xmax;
  • ImplicitPlot [eqn, {x, xmin,ml,m2,…, xmax} ] — построение функции, неявно заданной уравнением eqn, при х, меняющемся от xmin до xmax с исключением точек m1, m2, …;
  • ImplicitPlot [ {eqnl, eqn2,…}, ranges, options] — построение функций, неявно заданных уравнениями eqni, при х, меняющемся в пределах ranges и при задании опций options.

Примером может быть функция х 2 + k у 2 = r 2 , задающая построение эллипса. На показано такое построение.
Вторая форма задания функции иллюстрируется. Здесь строится сразу целое семейство эллипсов.
И, наконец, на показано применение третьей формы функции ImplicitPlot с использованием опции PlotStyle и директивы Dashing. далее…

Специальные типы трехмерных графиков — Graphics3D

Специальные типы трехмерных графиков— Graphics3D
 
В подпакете Graphics3D, загружаемом командой
<<Graphics`Graphics 3D`
имеется ряд программ для простого построения трехмерных графиков. Они описаны ниже с примерами:

  • BarChart3D[ {{ zll, z!2,…},{z21, z22 },…} ] — строит трехмерную столбцовую диаграмму по наборам данных высот столбцов z 11 , z п , … ;
  • BarChart3D[ {{{zll, stylell}, {z21, style21},…} ] — строит трехмерную столбцовую диаграмму по наборам данных высот столбцов z u , z vl , … с указанием спецификации стиля для каждого столбца.

Нетрудно заметить, что функция BarChartSD автоматически задает стиль и цвет построения столбцов диаграммы. Эта функция имеет массу опций, с помощью которых можно менять вид диаграммы. Как обычно, перечень опций можно вывести с помощью команды Options [BarChart3D].

  • Scatter Plot 3D [{ {x1, yl, zl}, {х2, у2, z2 },…}] — строит точки в пространстве по их заданным координатам. При использовании опции Plot-Joined->True точки соединяются отрезками прямых, и строится линия в пространстве.

Обратите внимание на то, что список точек формируется с помощью функции Table. Это возможно, когда построение делается для аналитически заданной функции, описывающей трехмерную поверхность.

  • ListSurfacePlot3D[{ { {x11, y11, zll}, {x12, y12, z13},…} } }] — строит трехмерную поверхность по координатам ее точек-(рис. 14.40).

Здесь список координат точек также задаются функцией Table. Выбором диапазона изменения значений переменных х, у и z можно добиться различных эффектов, например изображения только части сферы (на, к примеру, показано построение полусферы).
Следующие функции дают построения с проекциями:

  • ShadowPlot3D [f, {х, xmin, xmax}, {у, ymin, углах} ] — строит график поверхности f(z, y) с ее проекцией на опорную плоскость;
  • ListShadowPlot3D[{{ {xll, yll, zll}, {x!2, y!2, z!3},…}} }] -строит график поверхности z(x, у) с ее проекцией на опорную плоскость по координатам точек поверхности.

Еще один простой и эффектный пример применения функции ShadowPlot3D показан на. Здесь изображение поверхности — пика — проецируется на верхнюю плоскость, что дает наглядное представление о построенной фигуре.
С помощью функции Shadow [go], где до — графический объект, представляющий трехмерную фигуру, можно построить и более сложные рисунки — например, график объемной фигуры и сразу всех трех ее проекций на взаимно перпендикулярные плоскости. Такое построение иллюстрируется документом, показанным на.
С функцией Shadow можно использовать различные опции. далее…