Как стать автором
Обновить
20
0.2

https://steamclub.net

Отправить сообщение

Считай, извинение принято. И прикуси свой язык.

Хммм. Жалко учеников?! - Завидуйте им!

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

Поэтому когда излечитесь от болезни всезнайства и болезни спеси (что Вам рекомендано Выше), можете попробовать подать своё резюме на рассмотрение.

*

"Арифметический вектор" - полагаю, все догадались, что алгебраический. :)

 О "математической строгости"

@Kergan88 не просто прав, а абсолютно прав:

V, V* и V** все изоморфны, при этом вдобавок в V** преобразование координат такое же как в V, поэтому мы их отождествляем. Но это разные объекты.

И разговор здесь о "математической строгости".

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

Нужно знать что такое "строгость", как и где её применять. Километры текста на алгебраистике - это не математическакая строгость, это как раз её отсутствие.

Найпервейшая задача и правило примнения "математической строгости" - не допустить поломки логики.

А в приводимых Вами источниках - логика ломается с первых же абзацев. Поэтому, далее - начинаются "танцы с бубном", которые можно "принять" (т.е. заучить и использовать) либо не принять, но понять нельзя. Там аллогизмы.

Пример:

Начнем с поля действительных чисел R и построим?! над ним векторное пространство размерностью 1. В таком тривиальном векторном пространстве каждый вектор можно идентифицировать с числом. Поэтому 4, например - одновременно скаляр и вектор

https://avva.livejournal.com/1944537.html

Ну, конечно, вектор нельзя идинтифицировать с числом. Расхождение на уровне аксиоматики.

По определению в "число" (оно же количество) - первично кладут аксиоматику "совокупность объектов, мыслимых как целое". А с вектором сложнее

Вектор — понятие, определяемое в разных разделах математики различно.

Арифметический "вектор" - по определению многокомпонентная конструкция, геометрический "вектор" - геометрический образ у которого есть длина и направление. Уже отсюда видно, что "отождествить" ни число, ни вектор арифметический, ни вектор геометричекий - нельзя. А что можно? Построить (если это возможно) взаимно однозначное (биективное) отображение над объектами, "собранными" в разных аксиоматиках (и далее, если необходимо - изоморфизм(ы)). Тогда да, все три указанных аппарата будут взаимозаменяемы: можно "перебрасывать" объекты "туда-сюда" между биективно увязанными "пространствами".

Если логика в объяснении летит - всё, это уже не объяснение.

Поэтому, надеюсь, Вы понимаете, почему писать "4, например - одновременно скаляр и вектор" - это катастрофа, особенно в образовании. Ученику в голову закачивают такой "флотский борщ", в котором уже "плавают обломки кораблекрушения" его карьеры.

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

***

А ещё геометрические вектора бывают свободные и связанные.

Связанный вектор или направленный отрезок — упорядоченная пара точек евклидова пространства.
Свободный вектор — класс эквивалентности направленных отрезков. Иногда вместо того, чтобы рассматривать в качестве векторов множество всех равных направленных отрезков, берут только некоторую модификацию этого множества (фактормножество). Так, говорят о «свободных» (когда отождествляются все равные по длине и направлению направленные отрезки, считаясь полностью равными или одним и тем же вектором), «скользящих» (отождествляются между собой все направленные отрезки, равные в смысле свободных векторов, начала и концы которых расположены на одной прямой) и «фиксированных» векторах (по сути дела, просто о направленных отрезках, когда разное начало означает уже неравенство векторов).

То есть даже "векторов" - "зоопарк", и каждый - требует отдельного с ним обращения. И этого не избежать: попробуйте в "линейной алгебе" сложить вектора либо числа. Это невозможно: хоть есть много книг по "линейной алгебре", самой "линейной алгебры" нет. И вектор, и число - складывают в собственной алгебре, а "линейная алгебра" - это надстройка над множеством алгебр; конструкция, в которой операции объявлены, но не определены (на этом строится данное обобщение). Суть - охарактеризовать свойства операций алгебраических систем, попадающих в категорию "линейных". То есть установить их некоторое общее поведение (аналог в программировании: базовый класс со списком функций, которые не определены, но заданы некоторые их свойства, например арность, и классы-реализаторы (наследники) каждый по-своему реализующий эти функции).

Поэтому с составной математикой следует работать бережно, чётко разграничивая и отслеживая каждый аппарат (то есть разные аксиоматики), и (биективные) скачки (переходы) от одного к другому по ходу повествования. Равно как и входы-выходы отображений (о чем писал ранее). Иначе логика - летит моментально.

PS А статья у Вас хорошая (я её и карму сразу заплюсовал после прочтения, наверное, это что-то значит :) ).

PPS По Речкалову - он сам прямо во вступлении пишет, что первая книга у него - неудачна

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

и далее:

Определение тензора есть суть, основа, сущность, альфа и омега тензорной теории. Я в своем изложении буду придерживаться определения, которое приводится в книге П. К. Рашевского, которое, как мне кажется, наиболее полно отражает суть этого понятия.

Это к тому, что я, как говорят в народе, "от балды" ничего не пишу.

Медведев, ты дерзкий и забавный мужик, и хорошая для тебе новость - ты на пути к "деду": что твои, что его комментарии - одинаковы - как у братьев-близнецов (однояйцевых).

Далее, тебя никто не учил, хули ты наехал?

Как раз с точностью наоборот. Начав читать преамблу создалось впечатление, что статью можно закрывать. Эти опасения подтвердил и список литературы ("Тензорное исчисление для «чайников», Речкалов*, Ландаулифшиц, Википедия") и большое количество "учебных пособий" (которые, как показывает практика - очень сомнительное чтиво).

Однако почитав статью "вглубь" стало понятно, что это хорошая попытка осмыслить (понять) и объяснить понятие тензора. Победря (эталонное изложение) и Кочин в списке подтвердили это.

Но я настаиваю на таком подходе (это не к Вашей статье, а в принцие) https://habr.com/ru/articles/821319/comments/#comment_26935205 - потому что сначала следует на наглядной геометрии конкретных важных случаев объяснить действие (применение) того-либо иного тензора (что на входе? что на выходе?) - с этого начинают изучать любой математический объект, - а затем показать как его комбинируют.

Потому что, когда в одном случае вы кладёте в матрицу точки, во втором - геометрические векторы, в третьем - дифференциальные операторы - то есть объекты из разных областей математики, и даёте обобщённый аппарат манипулирования этими матрицами, то это просто алгоритм, который можно заучить, но понять либо самостоятельно применить - нельзя: ибо нужно досконально владеть перечисленными исчислениями и знать их примеры, чтобы видеть как в каждом из конкретных случаев действует это обобщение.

Если в математике не ясен "вход-выход" - дальше идёт тёмный лес.

И в 90% случаев объяснение должно даваться на наглядной геометрии, ибо упомянутые аппараты созданы для обсчёта параметров тел.

Ещё пример: можно заучить - но не понять алгебру над линейными пространствами - там аналогичный случай.

---------------

*очень неудачная книга. А вот вторая - Речкалов В.Г. Тензорный анализ для инженеров. 2018 - на порядок лучше.

Так я не про Вас. :)

Я про то, что у человека принципиально неверный подход, и он на своих "шишках" хочет убедиться в этом.

Собственно, почему нет?! Каждый имеет на это право. :)

PS Так же, пользуясь случаем, разъясню, почему в комментариях мало кто оказывает квалифицированную помощь автору.

Специалист, начав читать статью из таких "решений" сразу её закрывает, ибо с первых строк понятно, что далее - "тема для разговора отсутствует". И я не закрыл лишь потому, что подписан на автора, сам оформляю алгоритмы автоматами (это единственно верный способ оформления алгоритмов ака "написания программ"), поэтому автор мне симпатичен.

Одну переменную защитить можно, а надо ли группу защищать в данном конкретном случае, я не понял.
Какую засаду и почему?

Две причины: 1) состояние объекта в 99,99% случаев не хранится в одной переменной, а атомики не позволяют блокировать сразу группу, 2) при пересчёте переменную необходимо блокировать на всё время её пересчёта, ведь другие потоки могут перезаписать её значение, поэтому такое использование атомиков даже если пересчитываемая переменная одна делает алгоритм заведомо ложным. Отсюда на атомиках конечного автомата не построишь. Они хороши в случае несвязанных переменных статистики, и даже при подсчёте ссылок на объёкт (с учётом того, что по достижении нуля ссылка больше никогда не увеличится, и объект должен быть уничтожен).

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

ИМХО, вряд ли можно создать литературный труд, чтение которого...

Так вот, чтобы не создавать и не читать "литературный труд", "литературный плод" или бесплодие, и было, как говорят в народе "не на дурку", и не ради "трёпа языком" предложено вот это. Ключевое выделю жиным:

(с) а читать там не много
https://habr.com/ru/articles/821283/comments/#comment_26926865

Подождём, когда в конец измученный "мы пойдём своим путём" автор вернётся к этому. А он вернётся. Без вариантов.

И потом уже на дипломе я столкнулся с криволинейной геометрией и снова с тензорами, но теперь с точки зрения геометрии. Блин, насколько сразу стало всё понятно и естественно. Метрический тензор называется метрическим, потому что ... тадам! ... с его помощью измеряют длины кривых. У вас есть криволинейные координаты, а физические законы записаны для стандартных Евклидовых. Тадам! Вы подставляете в дифуры формулу сложной производной и бамц - вот у вас метрический тензор для первых производных и тензор кривизны для вторых. Атлас касательных расслоений, которого пугается автор в начале статьи, это вообще элементарщина...

Замечательный комментарий!

( @aldekotan , он заслуживает того, чтобы добавить его куском статьи, либо именно по изложенному @vanxant плану сделать вторую её часть: Тензоры в приложении к геометрии )

...В этом нет нужды. Поток, завершив работу, делает Decrement

Вы строите антипаттерн на антипаттерне. То что Вы предлагаете запрещено (и разобрано во всех учебниках в азах почему).

Далее:

Я пишу в рамках ВКПа. а там иной стиль и иные требования. Здесь же я подстраивал код под ВКПа-шный, делая его как можно ближе к нему.
Еще раз, подобный стиль мне почти чюжд ;) Я за автоматный.

Мало того, то как Вы пишете, это не просто уход от концепции конечных автоматов, это антиавтоматное программирование. В многопотоке автоматы строят над состояниями очередей (связанных списков, на которые очень хорошо ложатся графы). (Нельзя построить многопоточный КА иначе). И в классике детально разобрано почему так. Это азы.

PS Чтобы пояснить насколько фатальны Ваши решения по многопотоку, скажу, что если подобные решения даёт на собеседовании соискатель должности инженер-программист на С/С++, то собеседование прекращается в ту же минуту. В любой компании и при любой погоде. Примите к сведению и это.

Нельзя. Представьте, сколько времени тратится на эту операцию.

Плюс уже было введено std::atomic_int (что вообще очень сомнительное решение, ибо на атОмиках - защиту группы переменных не построишь). Вот и пошёл расти "огород", который, поверьте, опять имеет в оконцовке "засаду".

PS О том и речь: без чтения литературы по основам многопоточного программирования - будет "засада" на "засаде".

Не просто посоветую, а мало того, сейчас делаю это курс, и выложу его на Хабр вместе с архивом соответствующих книг.

Как говорится: "подписывайтесь, читайте, плюсуйте" (или минусуйте - это уже по вкусу).

Математика и физика для простой и результативной учёбы (Серия: Сельскому учителю в помощь)

https://habr.com/ru/articles/781498/

Вам, наверное, очень сложно даются все достижения

Здесь интуиция Вас подвела, - на 100% в обратную сторону. Да и семейно-клановый малый бизнес по впариванию втридорога сумок тучному обывателю, "успех" - тот ещё (хотя, для кого как, конечно).

Ну, а что Вам пожелать? Пожелаю Вам читать умных людей по-больше. Например, Вас:

Не ставьте себя выше других.

(с) Алексей Кучеров ака JamesAudmorr

https://habr.com/ru/articles/820651/comments/#comment_26925099

Аномалии привлекают. Сигнал к обдумыванию. Поэтому решил копнуть глубже.

А "бауманец" не так прост, как может из "статьи" показаться.
И правильно бьёт - в дорогой (люксовый) сегмент. Плюс попытка уйти от кустарного производства в технологии. Это вам уже не "когтеточки" из столяки и не мыло для маркетплейсов, мешаемое в ванной хрущовки, это стратегия бизнеса, о которой "статья" скромно умалчивает.

И с "бизнесменской" хваткой у него всё в порядке.
Только жизнь покажет получится у него либо нет.

Самые интерсные моменты в комментариях ГГ.
На вторую часть статьи тянут и немного бизнес и околобизнес раскрывают. Пусть это будет

Как бауманец научился делать миллионы на маркетплейсах и теперь работает с 7 до 21 без выходных 2.0 или Вторая часть интервью (оставшаяся за кадром)

статья - это литературный продукт, а не документальный. Возможно, если бы я писал сам, то использовал другие термины. https://habr.com/ru/articles/820651/comments/#comment_26924477

А вы не думали, что некоторые вещи в статье специально так написаны, чтобы вы комментировали, цеплялись к словам и даже бесились, тем самым продвигая эту самую статью
Я на хабре столько просмотров и комментариев редко вижу.
Значит, цель статьи достигнута.
https://habr.com/ru/articles/820651/comments/#comment_26927755

я не ломлю цены не потому что, чего то боюсь. Я не хочу уподобляться известным брендам у которых себестоимость 2% от продажной цены. Я уважаю своих клиентов. И никогда не делаю скидок больше 10%
https://habr.com/ru/articles/820651/comments/#comment_26924109

[Упс!]


(с) https://audmorr.ru

Кстати всем читателям, так как мы не платили за эту рекламу - скидка 10% от цены на сайте. Надо только сообщить, что вы нашли нас на хабре или на vc
https://habr.com/ru/articles/820651/comments/#comment_26924109

Какие вы вообще могли сделать выводы потратив 9 минут чтения на этой статье? Вы смогли оценить 4 года труда? Вам даже цифры не все показали.
https://habr.com/ru/articles/820651/comments/#comment_26927703

Чтобы вы не переживали. У меня тоже и вклады есть под эти вот 17%, есть и доллары живые, есть квартира, есть акции и облигации. Вот только драг металлов разве, что нет.
Также у меня есть богатый опыт в b2b технических продажах на рынках Металлообработки и сложного оборудования микро и нано электроники. Меня если что с руками оторвут на работу к себе, в ближайшие 10 лет)
Так что, я не парюсь)
https://habr.com/ru/articles/820651/comments/#comment_26924943

Рано или поздно рынок Айти тоже заполнят. Когда на каждое место будет 3 человека конкурс, никто уже такие зарплаты не предложит.
Я тоже всегда был нужен на работе. Но потом понял, что это когда-то кончится, и мой конец был где-то близко.
https://habr.com/ru/articles/820651/comments/#comment_26925675

я перестал смотреть бизнес тренинги и курсы по маркетингу. Эти вещи устаревают быстрее,чем молоко в холодильнике
https://habr.com/ru/articles/820651/comments/#comment_26924909

Вк, как и все соцсети пожирают рекламный бюджет, а взамен дают подписчика. А мне нужны продажи
https://habr.com/ru/articles/820651/comments/#comment_26923829

И да размышляю я и десятилетиями
https://habr.com/ru/articles/820651/comments/#comment_26927649

Много вы обо мне знаете. Они уже выросли и скоро будут свой бизнес делать. Мой уже на втором курсе в Бауманке и зарабатывает около 80 в месяц. Я доволен
https://habr.com/ru/articles/820651/comments/#comment_26920973

все почему-то решили, что им не хочется работать на дядю. Нужно свое открывать. Хочу чтобы перестали открывать и шли ко мне работать)
https://habr.com/ru/articles/820651/comments/#comment_26923987

Я Россию люблю. Люди здесь душевные)
https://habr.com/ru/articles/820651/comments/#comment_26925107

Листы сделал сам (дизайн, систему). Решили шить сами и открывать производство.
Мы обратились к одному консультанту, но он оказался мудаком и мы решили делать сами.
Всё делал сам и фотографии и текста, и рекламу. Даже бренд сам оформил. Налоги сам изучил.
https://habr.com/ru/articles/820651/comments/#comment_26924369
https://habr.com/ru/articles/820651/comments/#comment_26923543

Но Слава профессионал и я ему доверился
https://habr.com/ru/articles/820651/comments/#comment_26924477

Мне бы ваш интеллект, да только денег на вас не хватит
https://habr.com/ru/articles/820651/comments/#comment_26923817

Совет в PS тоже хороший:

Не ставьте себя выше других.
https://habr.com/ru/articles/820651/comments/#comment_26925099

Это может привести к тому...

Судя по коду там всё может привести ко всему. Например, я увидел строку запуска потоков ( start() ) , но не увидел ожидание их завершения (обычно join() ), поэтому, повангую, дальнейшим вопросом будет: "а почему программа падает при закрытии?".

Следующей "засадой" при распараллеливании алгоритма обязательно окажется, что правильным решением будет использование очередей, а не только голых объектов синхронизации (что обычно и делается в 90+% многопоточного ПО).

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

Никто Вас не обнулял, и предыдущие статьи у Вас - хорошие. Просто люди думали, что здесь статья, но мы имеем просто вопрос из разряда: "мужики, не работает код, помогите, горит!" с настолько корявым "исследованием" проблемы, что да, от изложенных "методов" работы с потоками, говоря народным языком, "волосы дыбом встают".

Если Вам нужно практическое и быстрое решение задачи "в лоб", то оно очень простое: полностью удалите весь нагороженный "огород", связанный с многопоточностью, кроме запуска потоков, заведите единственную критическую секцию и везде, где пересчитываете и меняете значение переменной пишите:

// заводим переменную либо связанные переменные
int i = 0;
int j = 0;
CriticalSection i_cs;

i_cs->lock();

// читаем
// пресчитываем
// записываем переменную

i += 8;

// или делаем с ней что хотим

j = i - 0 + 0 + i*2;

i_cs->unlock();

То есть такие куски алгоритма дожны быть защищены критической секцией.

Если есть несколько связанных между собой пременных, то вычисляться и меняться они должны в пределах одной критической секции (см. пример выше).

Если где-то необходимо только читать значение любой из защищённых переменных, пишете так:

int moment_i = 0;

i_cs->lock();
moment_i = i;
i_cs->unlock();

// используем значение moment_i, но использовать его для пересчёта и дальнейшей записи в i уже нельзя (i за время расчётов могла измениться)

int d_blah_blah_blah = moment_i*moment_i;

Оч хорошее расследование (оно же - расследование).

Математика остаётся непонятной для многих потому, что...

Тензорное исчисление остаётся тёмным делом, ибо его объясняют (преподают) 99,99% людей, которые его не используют, 99,99%-м людей, которые его использовать не будут. Так что же Вы хотите?

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

Например, некто С.Д.Пуассон имел следующее мнение по вопросу чем же украшается наша жизнь

А хороших книг с ясным объяснением по тензорному исчислению - есть. Вот несколько эталонных в Вашу копилку:

Рашевский П.К. Введение в риманову геометрию и тензорный анализ - 1936
Борисенко А.И., Тарапов И.Е. Векторный анализ и начала тензорного исчисления
Кильчевский Н.А. Элементы тензорного исчисления и его приложения к механике - 1954
Хатипов А.Э.-А. Основы тензорного исчисления и римановой геометрии - 1956
Каган В.Ф. Основы теории поверхностей в тензорном изложении
Мак-Коннел А. Дж. Введение в тензорный анализ. С приложениями к геометрии, механике и физике. 1963

Люди правильно пишут. Ошибки детские. Прочтите это эталонное изложение (а читать там не много) и подобных ошибок у Вас не будет никогда. Проверено.

2. Дж.Рихтер «Windows. Создание эффективных Win32-приложений с учётом специфики 64-разрядной версии Windows», 2008

главы:

6.  Базовые сведения о потоках
7.  Планирование потоков, приоритет и привязка к процессорам
8.  Синхронизация потоков в пользовательском режиме
9.  Синхронизация потоков с использованием объектов ядра
11. Пулы потоков

*

Наверное, "баумановцы" минусуют. Всей Бауманкой.

Восторг! Такого количества минусов не отгребал ещё никогда!

https://habr.com/ru/articles/819175/comments/#comment_26925859

Хоп, Хлоп, и MVP готов

Нашёл на просторах Хабра картинку в тему.

Информация

В рейтинге
2 273-й
Зарегистрирован
Активность

Специализация

Project Director, Software Architect
От 700 000 $
Project management
Building a team
Startup management
Development management