2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

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

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Устойчивая конфигурация N частиц
Сообщение22.05.2010, 10:43 
Заслуженный участник
Аватара пользователя


30/01/09
6682
poisonous. Вы записываете потенциальную энергию одной частицы. Надо выписать потенциальную энергию взаимодействия каждой из частиц с каждой.

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение22.05.2010, 11:06 
Заслуженный участник
Аватара пользователя


18/05/06
13437
с Территории
Это и есть каждой с каждой.

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение26.05.2010, 17:54 


07/10/08
87
Спасибо! Вот код из матлаба, что здесь может быть не так? Подскажите пожалуйста...

Код:
x0=[10^-10; 10^-10; 10^-10]; %начальное приближение
eps=10^-17; %точность
x1=[0;0;0];  %значение на следующей итерации
lam=0.05*10^-12; %лямбда, коэффициент, который перед градиентом ставится

syms x y z epsi sigma %переменные символьного типа

%подсчет градиента

grad_x=diff('(4*epsi*((sigma/x)^12-(sigma/x)^6)+4*epsi*((sigma/y)^12-(sigma/y)^6)+4*epsi*((sigma/z)^12-(sigma/z)^6))',x);
grad_y=diff('(4*epsi*((sigma/x)^12-(sigma/x)^6)+4*epsi*((sigma/y)^12-(sigma/y)^6)+4*epsi*((sigma/z)^12-(sigma/z)^6))',y);
grad_z=diff('(4*epsi*((sigma/x)^12-(sigma/x)^6)+4*epsi*((sigma/y)^12-(sigma/y)^6)+4*epsi*((sigma/z)^12-(sigma/z)^6))',z);
k=1; %чтобы зашел в цикл

while k>eps
    x_t=subs(subs(subs(subs(subs(grad_x,x,x0(1)),y,x0(2)),z,x0(3)),epsi,1.6539*10^(-21)),sigma,3.405*10^(-10));
    y_t=subs(subs(subs(subs(subs(grad_y,x,x0(1)),y,x0(2)),z,x0(3)),epsi,1.6539*10^(-21)),sigma,3.405*10^(-10));
    z_t=subs(subs(subs(subs(subs(grad_z,x,x0(1)),y,x0(2)),z,x0(3)),epsi,1.6539*10^(-21)),sigma,3.405*10^(-10));
    x1=x0-lam*[x_t; y_t; z_t];
    lam=lam/2;
    k=abs(x1-x0);
    x0=x1;
end

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение26.05.2010, 21:52 
Заслуженный участник
Аватара пользователя


30/01/09
6682
Во-первых, я извиняюсь, что ерунду сказал в предыдущем посту. Я только сейчас сообразил, что Вы в качестве координат берёте расстояния между атомами. Для трёх атомов это катит. А как быть, если атомов будет тысяча? Во-вторых, тот метод, что Вы используете сомнителен. Где Вы прочитали, что на каждом шаге надо $\lambda$ делить пополам? Из каких соображений взяли начальное значение этого множителя? (Может ссылку дадите?). В классическом градиентном методе $\lambda$ постоянно, но правильный выбор этого множителя затруднён, особенно для такой целевой функции как эта с большими степенями. Можно попробовать использовать одномерную оптимизацию на каждом шаге (метод скорейшего спуска). Тоже ерунда, но по крайней мере работать будет.

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение26.05.2010, 22:29 


07/10/08
87
Что-то вроде метода дихотомии?

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение27.05.2010, 19:57 
Заслуженный участник
Аватара пользователя


30/01/09
6682
Промоделировал на Матлабе Ваш метод. Сходимости добиться не удалось. Удалось добиться сходимости для постоянного $\lambda=0.06$ и то только для начальных точек, близких к минимуму.
poisonous в сообщении #324236 писал(а):
Что-то вроде метода дихотомии?
Скорее вроде метода золотого сечения. poisonous. Вам нужно моделирование исключительно для трёх точек? Эту задачу можно решить чисто аналитически. Если привлечь метод наискорейшего спуска, то он сойдётся за одну итерацию. Однако одномерный поиск надо организовать аккуратно, так как функция не выпукла.

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение10.06.2010, 15:08 


07/10/08
87
Да, задание состоит в моделировании именно для трех точек. А аккуратно - это как? А как удалось добиться сходимости для $\lambda =0.06$? А как же найти аналитически? Просто через производную?

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение10.06.2010, 19:44 
Заслуженный участник
Аватара пользователя


30/01/09
6682
Цитата:
А как же найти аналитически? Просто через производную?
Да. Но, возможно, от Вас это не требуется.
Цитата:
А как удалось добиться сходимости для $\lambda =0.06$?
Нашёл аналитически минимум и взял в качестве $\lambda$ величину, обратную второй производной в минимуме. (Это я написал не строго, но догадаетесь. Там вторая производная - диагональная матрица с одинаковыми элементами).
Цитата:
А аккуратно - это как?
Не знаю. Пробуйте. Но не факт, что вообще нужно применять тут точный одномерный поиск. Для этой задачи это как-то не интересно. Попробуйте применить градиентный метод, но как-то контролируйте длину шага. А какие рекомендации по выбору метода в Вашем задании?

 Профиль  
                  
 
 Re: Устойчивая конфигурация N частиц
Сообщение10.06.2010, 20:30 


07/10/08
87
Спасибо!
Рекомендаций особых и не было, было сказано про физичность данного метода, т.к. производная от потенциала по сути сила.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group