superdurszlak

  1. Kraków
superdurszlak
2019-06-15 14:09

Jak ten czas leci

Chyba wypadałoby pogratulować cierpliwości wszystkim, którzy wytrzymali ze mną rok na forum i wciąż radzą sobie bez terapeuty ;)

Moderacji też gratuluję, bo nie dość, że cierpliwa, to jeszcze wykazała się silną wolą i jak do tej pory obyło się bez bana. To znaczy, prawie całej moderacji, z wyjątkiem @cerrato, Ty jeszcze się musisz dorobić prawa rozdawania bananów. Ale w ramach nagrody pocieszenia standardowe gratulacje nadal Cię dotyczą :]

roczek

Idąc za przykładem @axelbest, żeby nie było, że nie ma żadnej wartości dodanej we wpisie załączam lekturę na weekend dla chętnych:
Writing an LLVM Backend - aż się łezka w oku kręci, stare dobre czasy, gdy wrzucili głupiego studenciaka-stażystę do wielkiej kobyły, jaką jest LLVM
Abaqus Scripting Reference Guide - jakby komuś strzeliło kiedyś do głowy, że chce się bawić w symulacje, ale nie chce mu się klikać wszystkiego w jakimś topornym GUI pamiętającym potop szwedzki
Kotlin Reference - jeśli Jarkowy Kotlin cały na czarno to dla Ciebie za mało

cerrato

Twój wpis podziałał dla mnie jako motywacja - jak będę grzecznym, pracowitym i zaangażowanym modem, to kiedyś dostanę uprawienia do bananowania. I wtedy się po Ciebie zgłoszę, bez konkretnego powodu, tak dla zasady ;)

cerrato

A tak nieco poważniej - jakieś 4 miesiące temu też mi strzelił roczek na forum. Chciałem z tej okazji zrobić wpis podobny do Twojego, ale potem uznałem, że zaraz zacznie się narzekanie, że sobie łapki produkuję, spamuję na blogu itp, więc sobie odpuściłem :(

szarotka

Ehhh dzieci, ja tu już 4 lata jako szarotka siedzę, a przedtem pod innym nickiem ;) A @Shalom to dopiero weteran.

grski

A mi za niedługo 4 lata. Jak to szybko zleciało. Początek mojego liceum jakoś tak. Piękne czasy.

superdurszlak

@WeiXiao: a co, to już nie wolno mieć konta krócej niż od trzeciego trymestru? :P
@grski: piękne, piękne. Jeszcze nie wiedziałem, że mat-inf będzie polegał na dziobaniu w Excelu... :D

grski

@superdurszlak: u mnie polegał na tym, że zrobiłem jakiś gównoprogramik w pythonie na zaliczenie i potem zwolnienie z przedmiotu w zasadzie do końca szkoły :D

WeiXiao

@superdurszlak: wydawało mi się, że dłużej ;)

superdurszlak

@grski: u nas ogólnie mat-inf to było totalne nieporozumienie i prawie całe liceum plułem sobie w brodę, że trzeba było albo pójść na mat-fiz, albo na mat-inf ale do innego liceum. Pomijając zabawy z excelem np. długo musieliśmy się bawić jakimś śmiesznym bieda-Scratchem z lat 90. Potem była parodia C/C++, przy czym do końca liceum dla sporej części klasy pętla for to był nadal B I G D E A L, wiecznie trzeba było zwolnić jeszcze bardziej, tłuc komuś jak krowie na rowie że na końcu ma być średnik, a nie kropka i nie przecinek i człowiek sobie żył w takim marazmie...
@WeiXiao: Hmmm gdyby liczyć czas, gdy nie miałem konta, nie odzywałem się tylko czasem zerkałem nieśmiało i próbowałem coś dziobać po szkole to rzeczywiście, byłoby pewnie z 8-10 lat ;)

WeiXiao

haha, to co spowodowało, że się przełamałeś? :D

litrmleka

To trzeba co rok gratulować? Kurde, chyba mam z dekadę zaległości.. :D

n0name_l

Ehh, ja już prawie 7, chyba stary jestem.. :/

tdudzik

U mnie leci piąty rok. Gdybym tu kiedyś jakimś cudem nie trafił to pewnie nigdy nie zostałbym programistą. W najlepszym wypadku siedziałbym w jakimś Janusz Sofcie w małym miasteczku na południu Polski i klepał w PHP strony wizytówki. :D

Aryman1983

@superdurszlak: Pech hmm ciekawe zainteresowanie :-)

superdurszlak

@tdudzik: gdyby babka miała wąsy... ;)

MasterOf

To ja tu już siedzę 1,5 roku :D Myślałem, ze ty tutaj byłeś wcześniej a tu taka niespodzianka

PerlMonk

@szarotka: Teraz twój nick kojarzy mi się z szarlotką. A @cerrato ... no cóż, sama się łapka daje, ja nie wiem :D

superdurszlak

@MasterOf: ja to czasem mam tak że ktoś się częściej pojawia w aktywności, przywykam do nicku i potem mi się zdaje że to jakiś stały bywalec - a potem zonk, bo rejestracja np. 1 miesiąc temu :v

MasterOf

A czy ja się często pojawiam? :)

superdurszlak
2019-05-09 19:32

To chyba mój ostatni wybryk, zanim uczelnia wsadzi mi dyplom do łapy, kopnie w d**ę na pożegnanie i pośle w świat, bym do końca życia był już tylko głupim klepaczem CRUDów :D

Wspominałem już chyba (a jak nie, to teraz mówię), że fizykom z SKNF "Bozon" zachciało się budować prototyp railguna. Takiego jak ten:
railgun
... tylko słabszego i tańszego, bo jednak jesteśmy w Polsce i nie ma pieniędzy na emerytury, a co dopiero na jakieś tam railguny i inne wymysły.

Zachciało im się, grant przyklepany, więc projektują. Projektują, więc chcą modele numeryczne np. balistyki końcowej, więc przyszli z tym do mojego promotora, bo u nich nikt chyba za bardzo nie umie w całe to modelowanie i tak oto wylądowałem w projekcie. Ale do rzeczy.

Jak już robię gościom te modele numeryczne balistyki końcowej, to w sumie głupio byłoby nie pokazać ich na Konferencji Studenckich Kół Naukowych AGH. Niech chociaż tyle z tego będzie. Zresztą goście z "Bozonu" też chcieli pokazać wyniki, no i tak jakoś wyszło, że wylądowałem z referatem w dwóch sekcjach - jak na klepacza CRUDów przystało, żadna nie była sekcją IT:

  • przeróbka plastyczna metali - tutaj solo, miałem całe 10 minut dla siebie, by truć ludziom tyłki o MES, modelach umocnienia, pluginach do Abaqusa i strzelaniu do blach. Niezbyt się przyjął pomysł wprowadzania wielomianów do modeli umocnienia, ale na szczęście nie ja na to wpadłem, tylko Chińczycy, ja tylko zaklepałem to do subrutyny Abaqusa i użyłem w obliczeniach, bo się krzywe umocnienia dość ładnie dopasowały do danych z eksperymentu.
  • fizyka - tutaj z towarzyszami z "Bozonu", gdzie oprócz mojego oczka w głowie (balistyki końcowej) przewinęła się też chociażby analizy CFD aerodynamiki pocisku czy N iteracji zmian jego kształtu i inne takie. Było trochę rozkminiania w trakcie dyskusji, co byśmy mogli zrobić, by zmniejszyć opór aerodynamiczny, ale generalnie bez większych zgrzytów.

Co się najadłem stresu przed wystąpieniami publicznymi, to moje, ale nawet coś tam się udało ugrać :)

  • przeróbka plastyczna metali - II miejsce
  • fizyka - III miejsce

Czyli łącznie piąty. Albo dwu-i-półty. Zależy, jak na to patrzeć.

Poniżej parę obrazków poglądowych, o co chodzi z tą całą balistyką końcową, modelami umocnienia i takimi tam.
nawet coś się policzyło
niedobry chiński model
niemiec płakał jak modelował

Aryman1983

Dałem lajka za fajny obrazek :-) Reszty nie rozumiem :-P

Zeszyt_w_kratkę

To jak kiedy pierwsze strzelanko? ;)

Burdzi0

Gratuluję, zwłaszcza tego zacięcia fizycznego, coś (zacięcia, niekoniecznie fizycznego) czego zazdrościłem (i pewnie będę zazdrościł) wszystkim porządnym inżynierom ;)

Zeszyt_w_kratkę

@superdurszlak: W ogóle sam zaczynam infe na AGH więc może kiedyś się tym bliżej zainteresuję

superdurszlak

@Zeszyt_w_kratkę: coś czuję, że nieprędko :D ale póki co chyba dali się przekonać, że rozkręcanie pocisku już w locie jakimiś bruzdami to średni pomysł (który raczej nie wypali) i już lepiej stabilizować lotkami
@Burdzi0: taki ze mnie inżynier, jak z koziej d**y trąbka sierści wata, jakby inżynier z prawdziwego zdarzenia zobaczył te modele, toby monitor herbatą opluł :P

Silv

Czyli łącznie piąty :D

Shizzer

Bardzo ciekawy projekt. Właśnie dlatego chciałbym w końcu wyrwać się ze szkoły średniej na studia tylko wiedzy mi brak na coś takiego niestety ;/

cerrato

@Shizzer: nie spiesz się. Za jakieś 20 lat będziesz nocami płakał, wspominał czasy podstawówki/liceum i to, jaki wtedy miałeś luz, a także będziesz na różnych forach internetowych poświęconych fizyce (głównie anglojęzycznych, bo w Polsce to dość niszowy temat) szukał sposobu konstrukcji wehikułu czasu, żeby móc tam powrócić. Uwierz mi, wiem coś o tym :(

superdurszlak

@Shizzer: Ale wiesz, potem (a zwykle jeszcze w trakcie) idziesz do pracy i rzeźbisz kupowaty kod w kupowatych projektach w działce, która nawet nie stała obok tego, co majstrowałeś na studiach i i tak wszystko idzie psu w... gardło :D

cerrato

I wtedy dochodzimy do mojego, wspomnianego 2 komentarze wyżej, nocnego płaczu ;)

Spine

Ale kto mu każe iść do zwykłej pracy? Jak ktoś ma ambicje robić coś innego, to niech robi i na tym zarabia.

Praca przy kupowatych projektach jest dla tych, którzy poszli w IT dla kasy, a nie z własnej potrzeby i zamiłowania.

superdurszlak

@Spine: no niezwykłej też może szukać, ale to chyba nie w kraju :) ale w takim razie jak już studia, to chyba lepiej od razu celować w zagraniczne, żeby się nie władować w dyplom uprawniający do obsługi frytownicy

karsa

Ja siedze troche przy CRUDach i nieco architekturach rozproszonych. Ale nie wiem czy nie trzeba bylo isc na jakis bardziej low level... teraz troche nie wiem jak sie od tego uwolnic :D

Shizzer

Właśnie uczę się C, Asm i Pythona celując przy tym w coś ciekawszego niż klepanie formatek. Może się uda :)

tdudzik

@Shizzer: jakie miasto? Zanim będziesz gdzies celował to możesz zastanowić jakie masz w ogóle opcje. Od razu ostrzegam, że można się lekko zdziwić :D

Spine

Pewnie się nie znam, ale obstawiam, że nie ma sensu się babrać w Asmie. Najniżej gdzie bym poszedł to w C...

tdudzik

@Spine: czy ja wiem, można wykorzystać semestr architektury czy języków assemblera (jeżeli ma się taki przedmiot) na porządne nauczenie się i zrozumienie tego. A czy warto iść dalej to już zależy od zainteresowań, jak ktoś chce się zajmować security to raczej musi się nauczyć niskopoziomowych rzeczy.

superdurszlak

@Shizzer: to tak nie działa. Klepałem w C++, IR i asmie, klepałem w Pythonie, koniec końców wylądowałem w klepaniu formatek i chyba prędko od tego nie ucieknę :P

Shizzer

@tdudzik na razie nie myślałem o tym w jakim mieście mógłbym pracować, jeszcze mam czas. :) @Spine Asm jest o tyle przydatny, że przy inżynierii wstecznej się go wykorzystuje np. analiza malware'u. @superdurszlak właśnie dlatego napisałem "Może się uda" :D

karsa

No. Napiszcie jak sie dostac do Cloudflare ;)

AreQrm

Może w ilości miejsc jesteś chociaż 1, jeśli jako jedyny wystąpiłeś na wielu "scenach" :D

superdurszlak

Rekordziści odwiedzają po 4 :D

AreQrm

Ale może nie zajmują miejsc "medalowych". Ty masz srebro i brąz! :P

superdurszlak

Nope, rok temu gość wziął i zgarnął 2 pierwsze miejsca w fizyce :p

Cr0w

@Shizzer nie spiesz sie na studia... @superdurszlak pokazal ta ciekawsza i mniejsza strone @superdurszlak ciekawy projekcik. nie wiesz jak z oplacalnoscia tego?

superdurszlak

opłacalnością pod jakim kątem?

Czitels

@superdurszlak: pare skrótów kojarze xD a pewien profesor na M. juz sie chwalil nam na wykladach co tam sie u was dzieje. Nawet gratki xd

alagner

@Cr0w: z doświadczenia z pracą na uczelni: opłacać się będzie póki będą granty i można króliczka gonić. Jak przyjdzie do realnej komercjalizacji: zacznie się skakanie do gardeł i dorzynanie kolegów w pogoni za kasą i prawami majątkowymi, sporo kadry odejdzie z projektu z tego powodu, sam projekt zdechnie m.im. z braku ludzi oraz biznesu w PL, który by zapłacił za niego. Na końcu odkupi go za bezcen UK/DE/SE/US. Być może z częścią naukowców.
Vide: polski grafen. Chociaż tam może kupują akurat Chińczycy, nie pamietam.

Hispano-Suiza

Zabawa w naukowca z prawdziwego zdarzenia w tym kraju to zabawa bez końca. Tutaj granty lecą na badania, które często nie dochodzą do skutku, a w większości są przeżerane. Raz na tysiąc razy wynajduje się coś innowacyjnego, i co? I g**o. Nic z tego jak zwykle nie ma, bo znajdują się zainteresowani uwalaniem projektów po to pewnie żeby ktoś z zachodu posypał do kieszonki, i zawinął projekt do siebie. Jak ktoś chce się bawić w prawdziwego naukowca to najsensowniej będzie stąd spieprzać do cywilizacji ;-)

superdurszlak

@alagner: @Hispano-Suiza: zależy w sumie gdzie, wydaje mi się, że najgorzej pod tym względem jest tam, gdzie przewija się największa kasa, szczególnie z dotacji, i/lub najwięcej jest tzw. leśnych dziadków. Ale tak czy siak ten projekt traktowałem raczej hobbystycznie, a nie po to, by robić z tego jakiś wielki sajens. Potem pewnie i tak będę już tylko klepał rzeczy porównywalne z okopywaniem kartofli, ale przynajmniej licujące z całokształtem innowacyjności i rozwoju w Tymkraju :)

Marooned

(wiem, że mogę wygooglać, ale skoro już w temacie...) skąd się bierze wybuch w railgunach (widoczny na fotce)?

Freja Draco

Podejrzewam, że z szybkości. Z punktu widzenia tego pocisku cząsteczki atmosfery mogą mieć prędkości (a więc i temperaturę) rzędu tysięcy stopni.

superdurszlak

Bardziej łuk elektryczny - tam są jednak gigantyczne prądy i moce. Od wysokiej prędkości owszem, nagrzewa się, ale warstwa powietrza przed pociskiem (przez adiabatyczne ściskanie) :P Wydaje mi się, że nawet trochę widać ją na tym zdjęciu, które załączyłem.

Marooned

Łuk elektryczny to raczej od napięcia, a nie prądu? ;-) Nadal daleko mi stąd do wybuchu. No nic, kiedyś przy okazji poszperam.

superdurszlak

Ja się na tym nie znam. Nie moja broszka :P

karsa

To jak będzie z tym cloudflare ;)

superdurszlak
2019-04-20 22:04

Jak mnie ten Abaqus FEA czasem wkurza... :D

Chcesz sobie oskryptować nasz kombajn do MESu? Wspaniale, tak się składa, że wystawiamy API dla Pythona... w wersji 2.7... Ale przynajmniej nasz pakiet odpala Twoje pluginy ze swojego wewnętrznego interpretera zagrzebanego diabli wiedzą gdzie, chodzącego diabli wiedzą jak, z jakim venvem i czy w ogóle - nie ma ryzyka, że przypadkiem wykorzystasz w swoich pluginach jakieś przydatne moduły spoza biblioteki standardowej! Oczywiście możesz spróbować doinstalować je bokiem, ale jak napsujesz, to Twoja wina :)

Masz już swoją subrutynę UHARD dla modułu Abaqus/Standard, i teraz chciałbyś wykorzystać swój model reologiczny w Abaqus/Explicit? Cudownie, tak się składa że przewidzieliśmy to i ujednoliciliśmy szablony obu subrutyn - dzięki temu w UHARD implementujesz krok dla pojedynczego punktu, zaś w VUHARD dla całej serii! Ponadto, w UHARD rezultaty zapisujesz do skalara i tablicy 3-elementowej, zaś w VUHARD do dwóch tablic jednowymiarowych rozmiaru N i jednej dwuwymiarowej rozmiaru Nx2!

Masz problem z ogromnymi deformacjami i siatki MES nie radzą sobie nawet z wykorzystaniem remeshingu/ALE? Przewidzieliśmy to i wprowadziliśmy wsparcie dla metody SPH - wprawdzie jest wielokrotnie wolniejsza niż w konkurencyjnych pakietach obliczeniowych i najwyraźniej jednak się wykrzacza, ale przynajmniej się staraliśmy :)

Rozwiązujesz problem związany z pękaniem materiału oraz zderzeniami różnych obiektów? Przewidzieliśmy to i sprawiliśmy, że skonfigurowanie kontaktu działającego nawet po powstaniu ubytków w materiale będzie wymagało nie lada akrobacji, a zrzuty Twoich akcji do pliku replay połączone z naszą nieudokumentowaną metodą reprezentacji podzbiorów ścian przez "maski" zeżre cały dostępny RAM przy definiowaniu powierzchni kontaktu! Aby ułatwić Ci życie dopilnowaliśmy, byś nie znalazł nic na ten temat w dokumentacji, ludzie na ResearchGate czy iMechanica byli skonfundowani, a API nie pozwalało na automatyzację tej czynności skryptem!

Nadal chcesz modelować pękanie materiału przy uderzeniu? Świetnie, nasz model pękania zakłada istnienie wielkości zależnej od rozmiaru siatki - dzięki temu wystarczy, że zmienisz nieco gęstość siatki lub inaczej ją wygenerujesz, a będziesz mógł bawić się od nowa w poszukiwanie właściwej wielkości. Dopilnowaliśmy też, byś po przeczytaniu dokumentacji tego ficzera stwierdził na dwoje babka wróżyła i żył dalej w niepewności!

Czasem żałuję, że mój promotor nie zaczął testować pakietu LS-DYNA 2 lata wcześniej... :D

m123

nie wiem o co chodzi ale zycze powodzenia :D

Silv

@m123: Abaqus FEA (formerly ABAQUS) is a software suite for finite element analysis and computer-aided engineering, originally released in 1978. (https://en.wikipedia.org/wiki/Abaqus). Sam się przed chwilą dowiedziałem. ;)

trojanus

Promotor wiedział co robił, jeśli zlecił tą trudną pracę studentom :D
MESy są bardzo ciężkie w obliczeniach. Natomiast wydaje mi się, że można się wspomóc AI i MNISTem, lecz to nie będzie łatwa sprawa. Trzeba mieć kilkadziesiąt tysięcy fotek "pęknięć" materiału: stali, plastyku, drewna etc., w zależności co jest badane. Na tym można by nauczyć AI. Lecz i tak nie wróżę dobrych (przydatnych) wyników, bo jak coś jest losowe, jak np. miejsce pęknięcia, to jest losowe. Random wch**.
Ale głowa do góry, trzeba tak spreparować tezę, która jasno opisze problem, i że problem nie jest możliwy do rozwiązania mając dostępne narzędzia. :)

superdurszlak

@trojanus ja się bawię moim strzelaniem, a promotor w tym czasie spawaniem wybuchowym... ;) w zasadzie to pęknięcia wcale nie są takie losowe, ale o tym można by zrobić całą serię wpisów w formie mini-wykładów :D Dość powiedzieć, że znając np. jak ukształtowana jest mikrostruktura, gdzie pojawiają się jakieś np. takie albo inne fazy, karby strukturalne, niejednorodności które zaowocują np. słabszymi własnościami wytrzymałościowymi, jakieś ubytki etc byłbyś w stanie już w miarę realistycznie przewidzieć, gdzie materiał powinien pęknąć ;) Nawet są metody które pozwalają np. śledzić na bieżąco rozwój mikrostruktury w miarę trwania procesu (modele wieloskalowe itp) tylko wtedy to dopiero nakłady obliczeniowe lecą w kosmos...

Generalnie jeśli chodzi o pękanie, w zasadzie jedyne co potrzebuję to wiedzieć, w którym mniej-więcej momencie nastąpi utrata spójności w danym punkcie. I niby spoko, bo jest parę modeli pękania out-of-the-box, ale Abaqus ma dodatkowo swój "współczynnik Janosika" - czyli jakąś tam wielkość, odniesioną do wymiaru elementów, sterującą momentem, w którym element faktycznie zostanie usunięty z symulacji jako "zniszczony". Już sama konieczność usuwania elementów (w przypadku MES, w SPH ta utrata spójności nie powoduje znikania czegokolwiek) sprawia, że to raczej kiepskawe rozwiązanie, bo ni stąd, ni zowąd Twój obiekt magicznie traci połowę masy, która w rzeczywistości nadal by tam była i miała swój pęd, choć byłaby pewnie garścią wiórów, pyłu, czy wręcz stopionym metalem. Powiązanie z rozmiarem elementu nie pomaga, bo np. nagle okazuje się, że obszary gęściej pokryte siatką zachowują się zgoła inaczej, niż te pokryte rzadszą - bo parametr jest stały i globalny dla jednego materiału ;)

Jest co prawda XFEM, który jest poniekąd odpowiedzią na te cyrki przy pękaniu w zwykłym FEM i nawet podobno jakoś tam już działa w Abaqus/Standard, ale w Explicit póki co nie, a liczenie aż tak dynamicznych procesów standardem trwałoby wieki i wykładało się w 999 na 1000 przypadków przez jakieś problemy z brakiem zbieżności.

Czitels

Jak mnie ten Abaqus FEA czasem wkurza...

A myślałem, że instalacja tego softu to największy problem :D

superdurszlak

to zaczekaj, aż zaczniesz dowiązywać do niego sznurkami kompilator Fortrana... :D

superdurszlak
2019-03-12 23:22

Trochę mi fizycy z SKNF "Bozon" namieszali swoimi pomysłami z prototypem railguna i zamodelowaniem trafienia w cel przez pocisk w roli głównej - a nie spodziewałem się, że moja praca inżynierska jeszcze się do czegoś przyda - także ostatni tydzień spędziłem głównie na odkurzaniu mojego starego pluginu do Abaqusa i dziobaniu poprawek do modelu, żeby jakkolwiek uwzględnić np. nagrzewanie pocisku z powodu strat energii podczas przepływu prądu przy wystrzale i pokazać im jakiś PoC.

No, ale nie można żyć samymi szalonymi pomysłami studenckiej braci, czasem trzeba też podziobać coś do magisterki, bo się sama nie zrobi :D

Od wczoraj na tapetę idą subrutyny do Abaqusa - czyli krótkie procedury pisane w Fortranie, w których implementuje się zachowanie materiału zdefiniowanego przez użytkownika. W moim przypadku są to subrutyny UHARD, czyli w dużym skrócie modele umocnienia materiału w trakcie odkształcenia plastycznego. Na szczęście dla takich ignorantów, jak ja, praktycznie nie wymaga to znajomości Fortrana w stopniu wykraczającym poza zdefiniowanie paru zmiennych pomocniczych prostą arytmetykę.

W zasadzie lwią część roboty robi tu za użytkownika dokumentacja Abaqusa, dostarczając gotowy szablon dla każdego typu subrutyny:

      SUBROUTINE UHARD(SYIELD,HARD,EQPLAS,EQPLASRT,TIME,DTIME,TEMP,
     1     DTEMP,NOEL,NPT,LAYER,KSPT,KSTEP,KINC,CMNAME,NSTATV,
     2     STATEV,NUMFIELDV,PREDEF,DPRED,NUMPROPS,PROPS)
C
      INCLUDE 'ABA_PARAM.INC'
C
      CHARACTER*80 CMNAME
      DIMENSION HARD(3),STATEV(NSTATV),TIME(*),
     $          PREDEF(NUMFIELDV),DPRED(*),PROPS(*)

      user coding to define SYIELD,HARD(1),HARD(2),HARD(3)

      RETURN
      END

Gotowa subrutyna mieści się - z tego, co zauważyłem - w granicach 40 SLoC, zależnie od tego, jak bardzo złożonym modelem chcemy uprzykrzyć sobie życie. Weźmy na tapetę model Zerilli-Armstronga dla metali BCC, który napisałem sobie raptem kilka godzin temu - z pustymi liniami równo 40 SLoC:

      SUBROUTINE UHARD(SYIELD,HARD,EQPLAS,EQPLASRT,TIME,DTIME,TEMP,
     1     DTEMP,NOEL,NPT,LAYER,KSPT,KSTEP,KINC,CMNAME,NSTATV,
     2     STATEV,NUMFIELDV,PREDEF,DPRED,NUMPROPS,PROPS)
C
      INCLUDE 'aba_param_dp.INC'
C
      CHARACTER*80 CMNAME
      DIMENSION HARD(3), STATEV(NSTATV), TIME(1), PREDEF(NUMFIELDV), DPRED(NUMFIELDV), PROPS(*)
      REAL*8 C1,C3,C4,C5,C6,n,e,edot,edot0,edotn,T,Sp,einv,edinv
      REAL*8 Eath,Eath_e,Eth,Eth_ed,Eth_T,EDexp
      C1 = PROPS(1)
      C3 = PROPS(2)
      C4 = PROPS(3)
      C5 = PROPS(4)
      n = PROPS(5)
      C6 = PROPS(6)
      edot0 = PROPS(7)

      e = max(EQPLAS, 1e-6)
      einv = 1.0 / max(e, 1.0D-2)
      edot = EQPLASRT
      edotn = max(edot / edot0, 1.0D-3)
      edinv = 1.0 / max(edotn, 1.0D-2)
      T = TEMP

      Eath = C5 * (e ** n) + C6
      Eath_e = C5 * n * (einv ** (1.0D0 - n))

      EDexp = -C3 + C4 * log(edotn)
      Eth = C1 * exp(T * EDexp)
      Eth_ed = C4 * T * edinv * Eth
      Eth_T = EDexp * Eth

      SYIELD = Eth + Eath
      HARD(1) = Eath_e
      HARD(2) = Eth_ed
      HARD(3) = Eth_T

      return
      end

Wielkiej filozofii jak widać nie ma - wyciągamy parametry materiałowe, z parametrów i wielkości takich, jak dotychczasowe odkształcenie, prędkość odkształcenia czy temperatura obliczamy nową wartość naprężenia uplastyczniającego (SYIELD) oraz pochodne kolejno po odkształceniu, prędkości odkształcenia i temperaturze (HARD(1), HARD(2) oraz HARD(3)) - wielkości wymagane przez Abaqus/Standard dla modeli materiału plastycznego z umocnieniem.

Jeszcze nie próbowałem rozgryźć, jak wciągnąć do takich subrutyn zmienne wewnętrzne (np. gęstość dyslokacji) i spróbować je wykorzystać - ale też nie wiem, czy będą mi do czegoś potrzebne. Wszystko zależy od tego, które modele ostatecznie wezmę pod lupę. Tymczasem muszę się rozejrzeć za danymi materiałowymi dla dotychczas zaimplementowanych modeli i je przetestować ;)

Jeśli ktoś chce i ma możliwość, może się pobawić pluginem - jest dostępny tutaj. Czytanie kodu stanowczo odradzam - zostaliście uprzedzeni, nie zwracam kosztów leczenia okulistycznego, psychiatrycznego tudzież onkologicznego :P

Aryman1983

I takie wpisy mi się podobają, a nie kolejne wpisy z d**y :-)

Michał Kuliński

Polska myśl techniczna najlepsza na świecie!

superdurszlak

@Michał Kuliński: koło myśli technicznej toto nawet nie stało.. :P

superdurszlak
2019-03-03 23:38

W końcu jakiś konkretny postęp z pracą magisterską - po z grubsza skończonym UI pluginu do Abaqusa pora na walkę z bebechami i Fortranem :D

Generalnie idea jest taka, by przetestować na różnych symulacjach, porównać ze sobą i ocenić, jak różne modele materiałowe, empiryczne i/lub mniej lub bardziej fizyczne (np. klasyczny Johnson-Cook, Steinberg-Guinan, Zerilli-Armstrong i inne) radzą sobie z opisem zachowania metalu w warunkach odkształcenia z dużą prędkością deformacji. Gwóźdź w tym, że Abaqus FEA wspiera raptem parę modeli, np. Johnsona-Cooka, zatem chcąc policzyć coś z własnym modelem trzeba napisać sobie odpowiednią subrutynę - w przypadku modeli opisujących umocnienie może to być np. UHARD.

Wymagane jest, aby taka subrutyna obliczała konkretne wielkości. Dla UHARD będzie to:

  • SYIELD - naprężenie uplastyczniające tzn. jak duża intensywność naprężenia jest konieczna, aby w danej temperaturze, przy danej wielkości odkształcenia plastycznego i przy danej prędkości odkształcenia odkształcenie mogło postępować nadal
  • HARD(1) - pochodna naprężenia uplastyczniającego po wielkości odkształcenia
  • HARD(2) - pochodna naprężenia uplastyczniającego po prędkości odkształcenia
  • HARD(3) - pochodna naprężenia uplastyczniającego po temperaturze

Dokumentacja jest jaka jest, możliwości debugowania takiej subrutyny też są... ograniczone (sprowadzają się w sumie do d**a-debugowania i printowania wszystkiego co subrutyna urodzi), ale udało się po długiej walce urodzić takie coś - na pierwszy ogień poszedł Johnson-Cook, żeby mieć jakiś punkt odniesienia:

      SUBROUTINE UHARD(SYIELD,HARD,EQPLAS,EQPLASRT,TIME,DTIME,TEMP,
     1     DTEMP,NOEL,NPT,LAYER,KSPT,KSTEP,KINC,CMNAME,NSTATV,
     2     STATEV,NUMFIELDV,PREDEF,DPRED,NUMPROPS,PROPS)
C
      INCLUDE 'aba_param_dp.INC'
C
      CHARACTER*80 CMNAME
      DIMENSION HARD(3), STATEV(NSTATV), TIME(1), PREDEF(NUMFIELDV), DPRED(NUMFIELDV), PROPS(*)
      REAL*8 A,B,n,C,m,e,edot,edot0,edotn,T,Tr,Tm,Th,Sp,Spmin
      A = PROPS(1)
      B = PROPS(2)
      C = PROPS(3)
      n = PROPS(4)
      m = PROPS(5)
      edot0 = PROPS(6)
      Tr = PROPS(7)
      Tm = PROPS(8)
      e = EQPLAS
      edot = EQPLASRT
      edotn = edot/edot0
      T = TEMP
      Th = (T - Tr)/(Tm - Tr)

      Sp = (A + B*(e ** n)) *
     1  (1 + C*log(edotn)) *
     2  (1 - Th**m)
      HARD(1) = B*n*(e ** (n - 1)) *
     1  (1 + C*log(edotn)) *
     2  (1 - Th**m)
      HARD(2) = (A + B*(e ** n)) *
     1  (C/edot) *
     2  (1 - Th**m)
      HARD(3) = (A + B*(e ** n)) *
     1  (1 + C*log(edotn)) *
     2  (m * (Th ** m) / (Tr - T))

      Spmin = 1.0d0
      if (Sp.LE.Spmin) then
        Sp = Spmin
        HARD(1) = HARD(1)/1000
        HARD(2) = HARD(2)/1000
        HARD(3) = HARD(3)/1000
      end if
      SYIELD = Sp

      return
      end

Porównałem rezultaty z napisanej subrutyny UHARD i Abaqusowego modelu JC (dla zmyślonych danych, ale z grubsza przypominających parametry stali) i... no, rząd wielkości się zgadza, ale widać, że coś jest jeszcze do poprawienia ;)

UHARD:
UHARD
Abaqus JC:
Abaqus
Także w tym tygodniu czeka mnie walka z poprawianiem tej subrutyny, pisaniem nowych, dalszym poprawianiem pluginu i być może jakimiś nowymi ficzerami.. ;)

vpiotr

ale widać, że coś jest jeszcze do poprawienia - niespecjalnie widać. 1) obrazki prawie identyczne 2) opisy różnią się głównie legendą, która nawet przy niewielkich różnicach może być inna 3) gdybym cokolwiek wiedział o merytorycznej części tego zadania poprosiłbym o dane numeryczne.

superdurszlak

niespecjalnie widać

zerknij na skalę, domyślnie jest dobrana do skrajnych wartości, które nieco się różnią w obu modelach - muszę się dziś przyjrzeć trochę dokładniej, na ile duże są te rozbiezności przy ujednoliconej skali, czy to jest kwestia jakichś pojedynczych węzłów siatki MES, czy może na całym obszarze wartości np. odkształcenia plastycznego (na obrazkach) czy naprężenia są inne w subrutynie, a inne w standardowym modelu. To może być kwesita albo tego, że jakieś błędy zaokrągleń rozłożyły się nieco inaczej - a zaokrąglenia w Abaqusie potrafią być udręką, chcąc zrobić model np. eksplozji musisz przyjąć konkretne jednostki, bodajże [cm|kg|us|K] bo inaczej wszystko się wysypie. Może też być tak, że to w subrutynie jest jakiś drobny błąd, przez który wyniki są delikatnie rozbieżne.

vpiotr

Jeśli ta legenda jest robiona przez min-max to nawet niewielka (1) różnica na jej krańcu może spowodować różnicę na całej legendzie.

superdurszlak
2019-02-21 21:46

Brzydka jak noc (i ładniejsza nie będzie), kod spięty sznurkami na słowo honoru, testów brak (bo i jak tu testować plugin do kobyły), pylint płakałby gdyby to lintował...

...no, ale w końcu magisterka zaczyna nabierać jakiegokolwiek kształtu ;)

Teraz czeka ta mniej radosna część zabawy - nauka Fortrana i rzeźbienie subrutyn do Abaqusa :D

superdurszlak

@Aryman1983: nope, póki co bez pękania :D

Aryman1983

@superdurszlak: widzę tam jakieś obliczenia chyba wytrzymałości materiałów ale po cóż do tego Fortran? Ten Abaqus to jeszcze rozumiem.

superdurszlak

nie tyle obliczanie wytrzymałości, co np. zmian naprężenia uplastyczniającego przy odkształceniu z dużą prędkością i takich tam. A Fortran po to, żeby testować na tym różne modele reologiczne, których Abaqus nie obsługuje z marszu ;)

superdurszlak

Np. takie, które próbują opisać materiał bardziej od strony tego, co się dzieje wewnątrz, niż mnożąc/dodając sobie jakieś współczynniki Janosika :)

Aryman1983

@superdurszlak: jeju to już za dużo dla mnie jak na wieczór :-) ale fajne, czekam na kolejny wpis. Bronisz się w tym semestrze?

superdurszlak

jak dobrze pójdzie to w czerwcu ew. lipcu

Aryman1983

No to życzę powodzenia :-)

Hispano-Suiza

Oh. Mialem rozne tego typu zabawy co do wytrzymalosci, odksztalcen etc. w sredniej :-) Pokrywalo to jakies 1.5 roku I stopnia studiow :P
Powodzenia i dej czasami postepy prac :-)
PS. Nienawidze Pythona :P

superdurszlak

PS. Nienawidze Pythona :P

Pfff :D

Akihito

Ej ej przypomniales mi ze mam zaczac magisterke xD

orchowskia

Ja już skończyłem część projektową na szczęście, a do lipca to się skrobnie te kilkadziesiąt stron bez stresu :D

superdurszlak
2019-01-19 23:22

Z cyklu "szacunek operatorów telekomunikacyjnych do stałego klienta".

Dostałem dziś pismo o zmianach w warunkach umowy - na moje szczęście nieszkodliwych. Dlaczego na szczęście? Ano dlatego, że pismo zostało wysłane 11.01.2019r., a dotyczy zmian, które "wejdą w życie z dniem 12.12.2018r.", a zatem równo miesiąc przed wysłaniem pisma. Wspaniale. Cieszę się, że w ogóle przypomnieli sobie o mnie i raczyli wysłać ten list, bo pewnie bym się nigdy nie dowiedział, że coś się zmieniło - w końcu na starej umowie nowe warunki się samoistnie nie pojawią.

Całe szczęście, że w razie, gdyby coś było nie tak, mam ponoć prawo do niezaakceptowania nowych warunków umowy w terminie 30 dni od dnia otrzymania niniejszego zawiadomienia, ale nie krótszym niż do 12.12.2018r. Czyli 30 dni od dzisiaj. Chyba. Jeszcze by się mogło okazać, że jednak nie.

cerrato

To o czym piszesz to jakieś głupoty totalnie nieistotne z punktu widzenia klienta, ale jakby ktoś się uparł to podejrzewam, że by wywalczył wydłużenie terminu i w razie czego mógł się odwoływać/nie wyrazić zgody itp. A tak w ogóle - co to za wspaniała sieć/operator?

superdurszlak

Tylko wiesz, podejrzewam, że chcąc wywalczyć to przedłużenie terminu musiałby walnąć przynajmniej kilka pisemek i potencjalnie postraszyć jakimś UOKiK.

cerrato

Pewnie tak, a w skrajnej sytuacji nawet się otrzeć o sąd. Tak, jak pisałem - sprawa jest błaha, więc nikt walczyć z nimi nie będzie, ale co do zasady - przez nieprawidłowe powiadomienie to mogą sobie ten swój śmieszny termin nie-napiszę-gdzie-bo-nie-wypada wsadzić ;)

Michał Sikora

Też do mnie to przyszło. Jeszcze na kilka dni przed wysłaniem do mnie dzwonili, żeby przedłużyć umowę. Kobieta która dzwoniła była agresywna, chamska i bezczelna. Poszedłem do salonu, żeby zapytać ich, jak im się to wszystko kalkuluje, to w odpowiedzi dostałem mniej więcej, że mogę ich pocałować w rzyć a umowę mogę wypowiedzieć płacąc karę. Byłem blisko zgłaszania, ale ostatecznie uznałem, że szkoda mi nerwów na to. Po prostu zmienię operatora z końcem umowy, która niedługo wygasa.

superdurszlak

I pewnie przed przedłużeniem wciskali Ci, że ta nowa umowa będzie korzystniejsza choć wcale nie jest, a do tego aktywowali srylion dodatkowych płatnych usług, których sobie nie życzyłeś, a które musisz teraz powyłączać? ;)

Michał Sikora

Nie wiem, nie słuchałem prawdę powiedziawszy samej oferty. Grzecznie powiedziałem, że dziękuję, ale nie jestem zainteresowany i wtedy babka zaczęła na mnie najeżdżać, że "Jak to? Ale co się konkretnie nie podoba? To co ja się tu produkuję?". Kilka razy powiedziałem jej, że w sumie nic konkretnego i najzwyczajniej w świecie nie mam ochoty teraz przedłużać umowy, bo jeszcze mam chwilę zanim wygaśnie. Ta na to, że domaga się, żebym jej wyjaśnił, który z proponowanych warunków mi nie pasuje. Jak jej zwróciłem uwagę, że może trochę mniej agresywnie i grzeczniej, to ta dalej swoje w tonie gestapowca.

czysteskarpety

Takie pisma (w interesie firmy) powinny być wysyłane poleconym, bez dowodu odbioru to sobie możesz podetrzeć... (no chyba, że zawierana przez tel. i pismo jest tylko potwierdzeniem warunków). Orange ma wiele umów z podrzędnymi call center, które mają raczej agresywnych telemarketerów.

superdurszlak
2019-01-09 18:38

Ja to mam szczęście - gdzie nie wejdę, widzę albo bugi, albo literówki.

Dziś na tapecie Glassdoor -> dowolna firma -> Rating Trends :D

A co się naszukałem formularza kontaktowego, żeby im to w ogóle móc zgłosić, to moje.

noindyfikator

trzy razy próbowałem zamknąć powiększony obrazek tym "fake" krzyżykiem..

noindyfikator

@czysteskarpety: niestety nie, dopiero zastosowanie chrome dev toolsów i usunięcie modal dialogu z struktury html pomołgo

superdurszlak
2019-01-06 12:35

Wam też zrobiło się tak, że jak spróbujecie przejść na stronę główną 4p, to serwer zwraca "pięćsetkę" i wyrzuca taki piękny komunikat?

czysteskarpety

Zamiast do kościoła to wszyscy walą na 4p i potem tak jest :/

superdurszlak

kiedyś po mszy się chodziło na zakupy a teraz zakaz handlu i trzeba na 4p siedzieć :/

furious programming

@superdurszlak: logo z tym tekstem to byłaby fajna grafika na koszulkę. :D

superdurszlak
2018-12-29 01:23

Schyłek Roku Pańskiego 2018.

Wchodzę sobie kulturalnie na portal Gazety Krakoskiej, żeby przeczytać (a wpierw znaleźć) artykuł. O wypadku. Kolejnym. Tramwaj rypnął w autobus, albo autobus w tramwaj - nie wiem. Myślałem, że się dowiem.

Wszedłem. Pyk, powiadomienie wyłącz AdBlocka wyskakuje. Klik, zamknąłem. Szczęście, że jeszcze można.

Pyk, pyk pyk - 3 okienka w rogach ekranu. Jedno automatycznie odtwarza jakieś wideo. Klik, wyłączyłem i zamknąłem. Jakiś clickbait do artykułu o czymśtam - klik, zamknąłem. Jakieś... a nie wiem co, od ich sponsora albo kogoś - klik, zamknąłem.

Artykułu nie znalazłem. Otwieram inny, jak już wszedłem to coś poczytam. Pyk, powiadomienie weźże wyłącz tego AdBlocka no dej nam zarobić centusiu jeden ty! Klik, zamknąłem. Pyk, znowu to okienko z autoodtwarzaniem - klik, wyłączyłem i zamknąłem. Można czytać.

Nie, jednak nie można. Coś zaczyna grać w tle. Scrolluję, szukam - ot, znowu jakieś samoodtwarzające się video, na końcu artykułu. Scrolluję, klik - wyłączam. Wracam na górę.

I wtedy znowu zaczyna grać. Scrolluję w dół, patrzę - samo się włączyło gdy tylko zescrollowałem. Klik - wyłączam znowu. I wracam.

I tak ze trzy razy, jak nie lepiej (ノಠ益ಠ)ノ彡┻━┻

Jak tak ma wyglądać Internet, to może niech już sobie uchwalają te ACTY, RODO, podatki od linków i automatyczne filtry do wykrywania łamania praw autorskich. Niedługo i tak nie będzie się dało tego używać.

furious programming

4p ostoją normalności – tutaj nigdy nie będzie takiego chlewu. Mam nadzieję.

TurkucPodjadek

Można używać NoScripta czy ekwiwalentu dla Chromium - z reguły domyślnie blokuje z miejsca te wszystkie dziwne komunikaty i żebractwa dając treść do wglądu (ale bez funkcjonowania np. komentarzy)

czysteskarpety

Ja zawsze klientom staram się wyperswadować te wszelkie dodatki, a jak robię modale czy inne powiadomienia to zawsze jak najmniej inwazyjne, wręcz mikroskopijne na ile wymagają to ustawy :] p.s Natasza Urbańska w bardzo jasnym blond wygląda słabo :D

Aryman1983

@czysteskarpety: wisisz mi za onkologa :-) Faktycznie wygląda słabo w tych włosach :-P Ilość okienek przytłacza i to jeszcze z uruchomionym ublockiem i innymi tam blockerami :-(

youmound

kto normalny czyta coś od GAZETA? AGORY i tych innych? nie dość, że to nie jest dziennikarstwo to jeszcze chlew,zresztą płatny XDD

superdurszlak

@youmound ale wiesz, że Gazeta Krakowska i Gazeta Wybiórcza to nie to samo? nawet jednego właściciela nie mają :D

szarotka

eee tam, wygląda dobrze, po prostu jesteście przyzwyczajeni do starej wersji Nataszy

cerrato

nie, nie wygląda dobrze :(

Hispano-Suiza

@superdurszlak: https://addons.mozilla.org/en[...]refox/addon/disable-autoplay/ (do Chrome też jest). Ciesz się, że można zamknąć bo taki BusinessInsider dopóki nie wyłączysz to nie poczytasz. Dlatego nie czytam :-)

superdurszlak

No właśnie jakiś czas temu przestałem czytać BI przez anty-adblocka :D

Tenonymous

ublock origin - polecam. Niewykrywalny przez większość takich stron. :P

Hispano-Suiza

Mam chyba wszystkie blokady jakie istnieja i niestety wykrywalny coraz czesciej :P

Tenonymous

@Hispano-Suiza: a to też nie dobrze, zostaw tylko UO i testuj. :P

lion137

A z noscriptem i Firefoxem się zapoznać?

mr_jaro

wystarczy wyłączyć autoplay w firefoxe i już te wszystkie playery nie startują