Re[2]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 21.11.20 19:35
Оценка:
Здравствуйте, graniar, Вы писали:

G>Это обманное ощущение, из-за того что молекулы в этих простых примерах представимы планарными графами.

G>Алгоритм для частного случая планарных графов действительно будет очень простым.
В большинстве случаев они действительно планарные. Одно из возможных исключений фуллерены о которых anonymouse2 написал.
Но пусть непланарные. Алгоритм не должен принципиально отличаться. Или совсем не должен отличаться Но представить сложнее, это да.
Re: Перевод понимания из интуиции в логику
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 21.11.20 20:59
Оценка:
Здравствуйте, Khimik, Вы писали:

K>У меня возникла такая задача: определить в молекуле все циклы (точнее, ароматические циклы). Молекула – это набор атомов с декартовыми координатами и связей между ними. Например в этой молекуле два цикла по 6 атомов:

Гугли алгоритмы на графах, лучше главу у Кормена почитать или спец. книжку скачать. А вообще, эта проблема не нова и советую поискать реальную статью или готовый алгоритм.
Я так понимаю твоя цель найти все бензольные кольца?
Sic luceat lux!
Re: Перевод понимания из интуиции в логику
От: xma  
Дата: 21.11.20 21:05
Оценка: :)
Здравствуйте, Khimik, Вы писали:

K>У меня возникла такая задача: определить в молекуле все циклы (точнее, ароматические циклы). Молекула – это набор атомов с декартовыми координатами и связей между ними. Например в этой молекуле два цикла по 6 атомов:


чё, как успехи ? ТЗ допилил ?

вообще если ты химик, то не особо понятно — почему тебя код заставляют писать ..
Re[2]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 21.11.20 21:10
Оценка: +1
Здравствуйте, xma, Вы писали:

xma>вообще если ты химик, то не особо понятно — почему тебя код заставляют писать ..

Прикинь, есть люди которых не заставляют, они сами решают, что делать. Наверно счастливые люди

xma>чё, как успехи ? ТЗ допилил ?

Там, к слову, все понятно.
Re[3]: Перевод понимания из интуиции в логику
От: xma  
Дата: 21.11.20 21:21
Оценка:
Здравствуйте, pagid, Вы писали:

xma>>вообще если ты химик, то не особо понятно — почему тебя код заставляют писать ..

P>Прикинь, есть люди которых не заставляют, они сами решают, что делать. Наверно счастливые люди

например, неделями ковырять "неработающий код" ? да, кучеряво, правда у нас на работе за такое выгоняли ..

xma>>чё, как успехи ? ТЗ допилил ?

P>Там, к слову, все понятно.

ну тогда ответь на вопросы — 1) могут ли в исходных данных молекулы попадаться циклы все атомы которых также являются частью других циклов ? — и 2) могут ли в исходных данных одной молекулы попадаться циклы с разным числом атомов ?

ну и что самое интересное — в старт посте не было озвучено, что атомы содержат координаты .. но тебе pagid'у, как "Вяликому химику" и "погромизду" — конечно же всё и так сразу было "понятно и очевидно" (c) .. кто бы сомневался ..
Отредактировано 21.11.2020 21:24 xma . Предыдущая версия . Еще …
Отредактировано 21.11.2020 21:22 xma . Предыдущая версия .
Re[4]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 21.11.20 21:33
Оценка:
Здравствуйте, xma, Вы писали:

xma>например, неделями ковырять "неработающий код" ? да, кучеряво, правда у нас на работе за такое выгоняли ..

ТС на себя работает, насколько я понял.

xma>ну тогда ответь на вопросы — 1) могут ли в исходных данных молекулы попадаться циклы все атомы которых также являются частью других циклов ? — и

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

2) могут ли в исходных данных одной молекулы попадаться циклы с разным числом атомов ?
см.выше.

xma>ну и что самое интересное — в старт посте не было озвучено, что атомы содержат координаты ..

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

xma>но тебе pagid'у, как "Вяликому химику" и "погромизду" — конечно же всё и так сразу было "понятно и очевидно" (c) .. кто бы сомневался ..

Тю. у тебя понос что ли уже начался? Впрочем, как обычно.
Re[5]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 09:52
Оценка:
Здравствуйте, pagid, Вы писали:

xma>>ну тогда ответь на вопросы — 1) могут ли в исходных данных молекулы попадаться циклы все атомы которых также являются частью других циклов ? — и

P>Нет. Все циклы могут состоять только из шести атомов, и в этом случае это будет тот же самый цикл.

а вот например по примеру (ниже) — не тот же самый цикл (где все атомы центрального цикла являются также составной частью соседних циклов )

  вот что я называл сотами


или такого как на картинке выше, не может быть ничего подобного и у любой молекулы в любом её цикле всегда есть атомы не задействованные — в других (соседних) циклах ?

P>Ну и не атомы конечно содержат координаты, а их описание.


какое "ценное" замечание .. сам бы я никогда не догадался ..

P>Тю. у тебя понос что ли уже начался? Впрочем, как обычно.


а ты что, по совместительству химик или что — откуда такое самомнение об условиях задачи ? (сразу начинает попахивать дилетантством)
Отредактировано 22.11.2020 9:52 xma . Предыдущая версия .
Re[6]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 22.11.20 10:14
Оценка:
Здравствуйте, xma, Вы писали:

xma>а вот например по примеру (ниже) — не тот же самый цикл (где все атомы центрального цикла являются также составной частью соседних циклов )


xma>вот что я называл сотами

Там семь циклов которые нужно найти.
Соты и соты, пусть будет так.

xma>или такого как на картинке выше, не может быть ничего подобного и у любой молекулы в любом её цикле всегда есть атомы не задействованные — в других (соседних) циклах ?

Может быть.

xma>а ты что, по совместительству химик или что — откуда такое самомнение об условиях задачи ? (сразу начинает попахивать дилетантством)

Для этого достаточно немного помнить школьную химию.
Re: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 22.11.20 10:21
Оценка:
Здравствуйте, Khimik, Вы писали:

K>В этой молекуле четыре цикла по 6 атомов; если в ней удалить два центральных атома, останется один большой цикл из 14 атомов:

Цикл останется ароматическим? Такое вещество вообще будет устойчивым?
Re[7]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 10:26
Оценка:
Здравствуйте, pagid, Вы писали:

xma>>или такого как на картинке выше, не может быть ничего подобного и у любой молекулы в любом её цикле всегда есть атомы не задействованные — в других (соседних) циклах ?

P>Может быть.

ага ага, "Там, к слову, все понятно." (c) — но даже однозначно интерпретируемый вопрос без картинки не понял, и стал городить чушь (цитата ниже), и ещё говорит — что не дилетант ..

xma>>ну тогда ответь на вопросы — 1) могут ли в исходных данных молекулы попадаться циклы все атомы которых также являются частью других циклов ? — и
P>Нет. Все циклы могут состоять только из шести атомов, и в этом случае это будет тот же самый цикл.


P>Для этого достаточно немного помнить школьную химию.


ничё си память у тебя ..
Отредактировано 22.11.2020 10:28 xma . Предыдущая версия .
Re[2]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 10:32
Оценка:
Здравствуйте, pagid, Вы писали:

K>>В этой молекуле четыре цикла по 6 атомов; если в ней удалить два центральных атома, останется один большой цикл из 14 атомов:

P>Цикл останется ароматическим? Такое вещество вообще будет устойчивым?

ты же говорил что "Там (в ТЗ — прим.), к слову, все понятно."

и что,

P>Нет. Все циклы могут состоять только из шести атомов

https://rsdn.org/forum/education/7887923?tree=tree


а теперь вдруг вопросы появились — и оказалось что ты ТЗ то даже толком и не читал .. (я же сразу сказал — что дилетант )
Re[3]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 22.11.20 11:19
Оценка:
Здравствуйте, xma, Вы писали:

xma>ты же говорил что "Там (в ТЗ — прим.), к слову, все понятно."

Это непринципиальные "тонкости"

P>>Нет. Все циклы могут состоять только из шести атомов

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

xma>а теперь вдруг вопросы появились — и оказалось что ты ТЗ то даже толком и не читал .. (я же сразу сказал — что дилетант )

Читал конечно. В правильном ТЗ, все неочевидные вещи должны быть описаны отдельно, если этого нет, то следует ограничится очевидными. Не знал, профессионал?
У ТС, к слову, было не ТЗ, в вопрос с описанием задачи. Он предлагал поделиться мыслями, а вовсе не выполнять задание. И да, он ни разу не уточнил её, значит инфы содержащейся в первоначальной постановке вопроса по его мнению было достаточно. Но мне стало интересно, да, потрындеть, а вовсе не для предложения готового решения, формат форума не предполагает.

К слову, правильный ответ на вопрос ТС в топике был — выразить задачу в терминах графов и взглянуть на алгоритмы разработанные для графов, если среди них нет готового решения именно его задачи, то нужно адаптировать к её условиям какой-нибудь из них. Или продолжить поиски своего, после ознакомления с готовыми эти поиски могут оказаться более плодотворными.
Re[4]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 11:30
Оценка:
Здравствуйте, pagid, Вы писали:

xma>>ты же говорил что "Там (в ТЗ — прим.), к слову, все понятно."

P>Это непринципиальные "тонкости"

если бы ты хотя бы минимально представлял — пути реализации алгоритма, то понимал бы что "тонкости" эти — очень даже принципиальные ..

P>по моим представлениям ароматический цикл может состоять только из шести атомов углерода, при включении других элементов могут быть варианты. Но вопрос о химии, а не о ТЗ.


ты же сказал что тебе всё понятно ? "всё понятно — но надо уточнить .." (c), вообще то от этого — в корне зависят алгоритмы реализации требовании поставленной задачи ..

P>К слову, правильный ответ на вопрос ТС в топике был — выразить задачу в терминах графов


для начала надо вообще то определится с двумя вопросами — изложенными мною пару постов выше ..
Re[5]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 22.11.20 11:58
Оценка:
Здравствуйте, xma, Вы писали:

xma>если бы ты хотя бы минимально представлял — пути реализации алгоритма, то понимал бы что "тонкости" эти — очень даже принципиальные ..

Мне оно зачем, я решать задачу за ТС не брался. В том числе понимая, что она не такая уж и простая.

xma>ты же сказал что тебе всё понятно ?

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

xma>для начала надо вообще то определится с двумя вопросами — изложенными мною пару постов выше ..

Первый вопрос изначально я понял неправильно. Ответ на такой — схема названная тобой сотами возможна. Она и в примере из стартового сообщения была, в немного более простом виде. Почему возник вопрос
Про второй тоже писал. Исходя из изложения вопроса и примеров не могут. Во всяком случае вопрос на предложенном уровне проработки следует воспринимать именно так. Иначе ТС следует заложить в вопрос инфу об особенностях ароматических циклов содержащих атомы не углерода или исключить из вопроса слово "ароматические циклы"
Re[6]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 12:16
Оценка:
Здравствуйте, pagid, Вы писали:

P>Первый вопрос изначально я понял неправильно.


так ты его судя по изложенному тобою далее — до сих пор неправильно понимаешь ..

P>Ответ на такой — схема названная тобой сотами возможна.


P>Она и в примере из стартового сообщения была, в немного более простом виде.


не было сотами я назвал циклы где "ВСЕ атомы этого цикла являются также составной частью соседних циклов"

P>Почему возник вопрос


тебе всё на картинках показывать надо ?

  Скрытый текст
помеченные (красным — 1 группа) атомы входящие в цикл, не входят в другие соседние циклы (потому что их нет — рядом с ними),

а помеченные (жёлтым — 2 группа) атомы входящие в цикл — входят также и в другие циклы,

НО в каждом цикле (молекулы на картинке ниже) — есть атомы в них входящие — из 1 группы, т.е. под определение "СОТ" — не попадают .. а вопрос был именно — про соты ..



P>Почему возник вопрос


"слышу звон, да не знаю где он .." (c) на работе — также внимательно ТЗ и поставленные в Jira задачи читаешь ?
Отредактировано 22.11.2020 12:28 xma . Предыдущая версия . Еще …
Отредактировано 22.11.2020 12:17 xma . Предыдущая версия .
Re[2]: Перевод понимания из интуиции в логику
От: Khimik  
Дата: 22.11.20 13:07
Оценка: 2 (1)
Здравствуйте, pagid, Вы писали:

P>Здравствуйте, Khimik, Вы писали:


K>>В этой молекуле четыре цикла по 6 атомов; если в ней удалить два центральных атома, останется один большой цикл из 14 атомов:

P>Цикл останется ароматическим? Такое вещество вообще будет устойчивым?

Дело в том что я упростил задачу — предложил определять вообще любые циклы. Такого вещества с 14-членным циклом конечно не существует, а вообще ароматические циклы могут быть разных размеров, например в азулене есть два смежных цикла из 5 и 7 атомов.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[7]: Перевод понимания из интуиции в логику
От: Khimik  
Дата: 22.11.20 13:30
Оценка: +2
Здравствуйте, xma, Вы писали:

xma>не было сотами я назвал циклы где "ВСЕ атомы этого цикла являются также составной частью соседних циклов"


Я так и не понял, что вы привязались к этим сотам? Какая разница, все атомы цикла или не все входят в другие циклы? Так да, на моей второй картинке "сот" нет а на вашей картинке с короненом есть один такой цикл в середине. И что?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[8]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 13:40
Оценка:
Здравствуйте, Khimik, Вы писали:

xma>>не было сотами я назвал циклы где "ВСЕ атомы этого цикла являются также составной частью соседних циклов"


K>Я так и не понял, что вы привязались к этим сотам? Какая разница, все атомы цикла или не все входят в другие циклы?


реализация решения разная — для молекул без сот проще ..

K>Так да, на моей второй картинке "сот" нет а на вашей картинке с короненом есть один такой цикл в середине.


настоящий химик — я "от балды" нарисовал, а он уже "выяснил" — что это коронен ..

K>И что?


осталось выяснить — могут ли быть в одной молекуле циклы с различным числом атомов ? (это самый тухлый вариант — реализация одновременно с сотовостью — уже не так проста и очевидна)
Re[3]: Перевод понимания из интуиции в логику
От: xma  
Дата: 22.11.20 15:52
Оценка: -1
Здравствуйте, Khimik, Вы писали:

K>Дело в том что я упростил задачу — предложил определять вообще любые циклы. Такого вещества с 14-членным циклом конечно не существует, а вообще ароматические циклы могут быть разных размеров, например в азулене есть два смежных цикла из 5 и 7 атомов.


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

1) отбраковываем все атомы имеющие не более одной связи, а также направления из других атомов — которые к ним (одиночным атомам) ведут

2) проходим по каждому оставшемуся атому в массиве,

2.1) находим для текущего атома — все циклы в которые он входит, сохраняя для каждого атома (этих циклов) — полный список всех индексов входящих в них атомов

3) по новой проходим по атомам в массиве (исключая атомы из п.1.),

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

вуаля !!

п.2.1.1) находить циклы при этом придётся отсечением тех многоугольников (возможно и невыпуклых) где внутри есть другие атомы, по координатам .. (другого решения сходу не видать — разве что нейросети смогли бы как то обобщить решение/поиск , но по мне так — это не особо и надёжно)

на самом деле — на словах мне кажется понять тоже не просто, но если человек — не понимает ни на словах ни на C/C++, то сложно представить как ему это вообще объяснять можно ..

дискасс ?
Отредактировано 22.11.2020 15:54 xma . Предыдущая версия . Еще …
Отредактировано 22.11.2020 15:53 xma . Предыдущая версия .
Re[3]: Перевод понимания из интуиции в логику
От: pagid Россия  
Дата: 22.11.20 16:05
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Дело в том что я упростил задачу — предложил определять вообще любые циклы. Такого вещества с 14-членным циклом конечно не существует, а вообще ароматические циклы могут быть разных размеров, например в азулене есть два смежных цикла из 5 и 7 атомов.

Забавно, о таких не знал.
Они могут только рядом быть и существую на пару? Или бывают одиночные варианты?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.