Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Wolfram Mathematica | Математика

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

Открыть новую тему     Написать ответ в эту тему

xy



ХУдератор
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Wolfram Mathematica 14

Загрузка и поиск "лекарств"в "Варезнике"


 
Здесь обсуждаем вопросы языка Mathematica и программы, которая ИМХО лучше других выполняет свою задачу и, кроме, того очень точно соответствует своему названию, хотя там не забыли и про физиков и химиков и всех остальных:)

Всего записей: 10530 | Зарегистр. 28-05-2003 | Отправлено: 16:00 01-12-2003 | Исправлено: zAlAn711, 18:21 10-01-2024
Baset

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а вы во всём умные?)  
если я вам ещё страшненьких и странненьких задач подкину на решение, ничего?
причём, самое смешное, что реализовать их надо будет с помощью простого калькулятора, но там шифры Цезаря, РСЛОС и т.д.

Всего записей: 7 | Зарегистр. 26-05-2010 | Отправлено: 22:22 28-05-2010
KChernov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Казалось бы такая простая вещь, но как в субже увеличить размер шрифтов по-умолчанию? А то всё какое-то мелкое. Если выделить - поменять можно, но очередное вычисление - и результат опять мелкий.

Всего записей: 2471 | Зарегистр. 20-04-2004 | Отправлено: 22:31 28-05-2010
Griefin

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KChernov
Текст выглядит мелко, т.к. Mathematica по умолчанию настроена на маковское значение screen dpi, которое равно 72. Чтобы увеличить размер шрифта, нужно открыть Option Inspector, выбрать Global Preferences, присвоить параметру Global Options/System Configuration/ScreenResolution значение 96. Далее, найти Formatting Options/Font Options/FontProperties/ScreenResolution установить в Automatic. После перезапуска шрифты должны стать больше.
 
Кроме того, там в строке статуса у окон есть масштабный коэффициент для размера шрифтов.

Всего записей: 759 | Зарегистр. 19-07-2003 | Отправлено: 23:25 28-05-2010 | Исправлено: Griefin, 03:16 29-05-2010
KChernov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Griefin

Цитата:
Global Options/System Configuration/ScreenResolution

Тут у меня 0

Цитата:
Formatting Options/Font Options/FontProperties/ScreenResolution

А тут - 72
Но всё это серое и поменять не получается.
Версия 7.0.1.
 

Цитата:
Кроме того, там в строке статуса у окон есть масштабный коэффициент для размера шрифтов.

А вот этого думаю за глаза хватит, тем более, что эта настройка сохраняется в файле.
 
Спасибо за помощь

Всего записей: 2471 | Зарегистр. 20-04-2004 | Отправлено: 10:02 29-05-2010
Griefin

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KChernov
Я выше писал, что нужно в этом окне выбрать пункт Global Preferences. Иначе действительно настройки будут заблокированы.

Всего записей: 759 | Зарегистр. 19-07-2003 | Отправлено: 00:09 30-05-2010
KChernov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Griefin
Действительно пропустил этот момент. Всё настроил, спасибо

Всего записей: 2471 | Зарегистр. 20-04-2004 | Отправлено: 08:35 30-05-2010
terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые знатоки Mathematica.  
Есть у меня функция нескольких переменных, возвращает фазу в границах +-Pi /2
Нашел вот такую функцию, которая исправляет фазу, т.е. делает гладкую кривую без границ +-Pi /2

Код:
 
UnwrapPhase1[data_?VectorQ, tol_: Pi, inc_: 2 Pi] :=  
 FixedPoint[# +  
    inc*FoldList[Plus, 0.,  
      Sign[Chop[ListCorrelate[{1, -1}, #],  
        tol]   (*close Chop*)]    (*close Sign*)] &,(*close FoldList*)
  data]   (*close FixedPoint and overall function*)
 

 
Следующие действия используются чтобы сконструировать функцию которая дает исправленую фазу.
 
1. Генерирую таблицу значений фазы с пом. функции delta[l_, kf_, V0_, L_]  от 0.01 до 1

Код:
table1 = Table[delta[1, kf, 0.16, 16.2], {kf, 0.01, 1, 0.001}];

 
2. Значения X

Код:
tablex = Table[kf, {kf, 0.01, 1, 0.001}];

3. Новая таблица (X,Y)  

Код:
table3 = Partition[ Riffle[tablex, UnwrapPhase1[table1]], 2];

4. Интерполяция

Код:
deltasp = Interpolation[table3]

 
Теперь deltasp[kf] дает мне фазу в любой точке на отрезке от 0.01 до 1.
 
Вопрос такой, можно ли это все организовать в Mathematica в одну функцию/процедуру, что-то типа
deltasp[l_, kf_, V0_, L_, kfmin_, kfmax_, deltakf_]:=
где задаются просто дополнительные параметры  kfmin=0.01, kfmax=1, и deltakf=0.001.
 
Функция нужна дальше для следующих преобразований и интегрирования.  
 
 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 20:30 04-06-2010 | Исправлено: terminat0r, 20:35 04-06-2010
popkov

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Вопрос такой, можно ли это все организовать в Mathematica в одну функцию/процедуру
Можно-то можно, только вот так уж ли много в этом смысла? В чем смысл "исправления фазы", - если ты все равно потом интерполируешь? Не проще ли интерполировать сразу?

Всего записей: 1835 | Зарегистр. 22-03-2003 | Отправлено: 22:30 04-06-2010
terminat0r



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
popkov

Цитата:
В чем смысл "исправления фазы"

Смысл есть и очень большой. Сравните как пример
https://ccrma.stanford.edu/~jos/filters/img895.png
https://ccrma.stanford.edu/~jos/filters/img896.png
Вы сможете интерполировать с пом. сплайнов кривую на первом рисунке?
 

Всего записей: 2084 | Зарегистр. 31-03-2002 | Отправлено: 20:51 07-06-2010
popkov

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
 
Вы сможете интерполировать с пом. сплайнов кривую на первом рисунке?  

Вообще-то интерполируют набор точек, а не кривую. По этой причине даже разрывную и ломаную функцию можно интерполировать теми же сплайнами (если нет дублирующихся точек). Вот, например, интерполяция тангенса сплайнами:
 
fun = Tan[(x - 1/2) Pi];
pl = Plot[fun, {x, -2, 2}]
points = Join @@ Cases[pl, x_Line, Infinity][[All, 1]];
ListPlot[points]
int = Interpolation[points, Method -> "Spline"];
Plot[int[x], {x, -2, 2}]

Всего записей: 1835 | Зарегистр. 22-03-2003 | Отправлено: 11:29 08-06-2010
TomasVercetti

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хочу попытаться использовать Mathematica для подготовки текста, используя, например Journal Article Style. А как вставить формулу по середине (inline идёт с начала новой строки) и включить авто-нумерацию?

Всего записей: 319 | Зарегистр. 09-01-2006 | Отправлено: 22:09 25-06-2010
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Требуется сгенерировать список, может есть готовая функция, а я не знаю?
Проще на модельном примере, дано: n (показатель степени) и k штук переменных, x_i, i=1...k  
 Требуется сгенерировать список, состоящих из всевозможных произведений x_i*x_j*...*x_l,    0 <= i,j,l <= k,     i + j + l <= n  
 Пример: n=3 и x, y, и z  
 1, x, x^2, x^3, y, xy, yx^2, y^2, x y^2, y^3, z, xz, zx^2, yz, xyz, zy^2, z^2, xz^2, yz^2, z^3

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 01:45 30-06-2010
popkov

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TeXpert
Ликбез:
Цитата:
k штук переменных, x_i, i=1...k  

Код:
In[1]:= k = 10;
Array[x, k]
Out[2]= {x[1], x[2], x[3], x[4], x[5], x[6], x[7], x[8], x[9], x[10]}


Цитата:
сгенерировать список, состоящих из всевозможных произведений x_i*x_j*...*x_l,    0 <= i,j,l <= k,     i + j + l <= n  
Лень на ночь думать, но функция Permutations кажется более подходящей. Она даст избыточный список. Из него всегда можно выделить нужное с помощью функции Select. Если задача требует максисмальной производительности - это другая задача...

Всего записей: 1835 | Зарегистр. 22-03-2003 | Отправлено: 01:57 30-06-2010
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
popkov
Цитата:
Ликбез
Юмора не понял. Я Mathematica хоть немного, да знаю (начал пользовать потихоньку с версии 2.1), со списками тоже быстро разобрался
Цитата:
Лень на ночь думать, но функция Permutations кажется более подходящей
Не лучший вариант. Пока привлекательным кажется такой вариант: разложить, например, для случая выше, выражение (1 + x + y + z)^3, слагаемые из результата "вынуть", "очистив" от коэффициентов. То есть, в список занести операнды суммы. Придётся, наверное, так
 
Добавлено:
Пока такое решение:
Код:
A := Expand[(1 + x + y + z)^3]
Level[A, 1] /. _Integer*x_ -> x
Вдруг есть и покороче/поэффективнее?

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 02:11 30-06-2010
Partner1



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Можно так:
Код:
 
k = 10;
Apply[Times, Rest[Subsets[Table[Subscript[x, n], {n, k}]]], 1]
 

Всего записей: 273 | Зарегистр. 28-11-2007 | Отправлено: 09:52 30-06-2010 | Исправлено: Partner1, 09:53 30-06-2010
popkov

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
TeXpert
Можно немного укоротить, используя новую функцию MonomialList:
MonomialList[(1 + x + y + z)^3] /. _Integer*x_ -> x  
 
А так, решение уже достаточно простое.

Всего записей: 1835 | Зарегистр. 22-03-2003 | Отправлено: 13:40 30-06-2010
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Partner1
Цитата:
Можно так:
Код:
  
 k = 10;  
 Apply[Times, Rest[Subsets[Table[Subscript[x, n], {n, k}]]], 1]
Так нельзя, например при n=3 результат таков:  
{x_1, x_2, x_3, x_1*x_2, x_1*x_3, x_2*x_3, x_1*x_2*x_3}
 
popkov
Да, так чуть-чуть покороче
Цитата:
А так, решение уже достаточно простое
Оно то так, да только подход немного неизящный (жульнический, что ли) -- решение от обратного, разлагая полином. Ну да ладно, пока другого нет

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 14:34 30-06-2010
Vskazka

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Если Вам нужен коэффициент при сем члене в разложении (x1+x2+...+xk)^(n) при  
 x1^m1*x2^m2*x^m3*...*xk^mk, то это (n)!/(m1!*m2!*...* mk!) - это бином Ньютона...  
Пол страницы рассуждений развели на ровном месте  

Всего записей: 382 | Зарегистр. 24-11-2003 | Отправлено: 16:52 30-06-2010
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vskazka, может всё-таки стоит повнимательнее прочитать пост? Речь совсем о другом, и тогда не писал бы
Цитата:
Пол страницы рассуждений развели на ровном мест


----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 17:08 30-06-2010
Vskazka

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Вы подумайте, что что вам надо исходя из описания - Вашего - Список сгенерить.. Какой..  

Цитата:
Требуется сгенерировать список, состоящих из всевозможных произведений x_i*x_j*...*x_l,    0 <= i,j,l <= k,     i + j + l <= n  

что Вам собственно надо  простой перебор - так и перебирайте... если просто так выписать таковы произведения...  
Но это не задача ни при каком определении оной. Странно, что простейший перебор дает повод для писанины
Ну и нельзя через задницу гланды резать, напоследок  
 
 

Всего записей: 382 | Зарегистр. 24-11-2003 | Отправлено: 17:37 30-06-2010
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

Компьютерный форум Ru.Board » Компьютеры » Программы » Wolfram Mathematica | Математика


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru