Beafire - odporność ogniowa belek żelbetowych

Beafire - odporność ogniowa belek żelbetowych

pelka@transfer.edu.pl
Forma ochrony: 
Zastrzeżone know-how
Poziom gotowości technologicznej (TRL): 
TRL 4
Forma komercjalizacji: 
Sprzedaż praw własności


Dawca jest jedynym podmiotem uprawnionym do technologii
Opis technologii: 

Oprogramowanie Beafire jest narzędziem inżynierskim służącym do wyznaczania odporności ogniowej  belek żelbetowych. Oprócz wyznaczenia wartości odporoności ogniowej użytkownik ma możliwość monitorowania zmian temperatury w wybranym przekroju elementu oraz redystrybucji pól momentów zginających w wyniku lokalnych zmian sztywności elementu żelbetowego, poddanego

oddziaływaniu wysokiej temperatury. W obliczeniach przyjęto założenia zgodne z~zaleceniami inżynierskich norm projektowania konstrukcji żelbetowych (EN 1992-1-1, EN 1992-1-2).

Architektura pakietu

Na pakiet Beafire składają się trzy niezależne programy (executables):

  • Beafire - graficzny interfejs użytkownika. Program dostarcza okienkowy interfejs umożliwiający definiowanie zadania i wizualizację wyników, np. pola temperatury w przekroju belki. Dane wprowadzane przez użytkownika są zapisywane w pliku, który jest przesyłany do programu BeafireKernel w celu wykonania obliczeń.
  • BeafireKernel - silnik obliczeniowy.  Jest to program, który na podstawie danych zapisanych w pliku przeprowadza obliczenia odporności ogniowej. W nim zawarta jest implementacja opracowanego w projekcie podejścia do wyznaczania odporności ogniowej. Zadanie wyznaczania niestacjonarnego rozkładu temperatury jest delegowane do programu Tochnog.
  • Tochnog - jest to solver wykorzystujący Metodę Elementów Skończonych.
  • Komunikacja pomiędzy powyższymi komponentami odbywa się poprzez odpowiednio zaprojektowane pliki danych i standardowe mechanizmy komunikacji między procesami. 

    Opis rozwiązań

  • Program Beafire jest zaimplementowany w języku C++. Graficzny interfejs użytkownika zbudowano z wykorzystaniem biblioteki Qt (versja >=5). W celu ułatwienia konstruowania interfejsu dla większości widgetów specyficznych dla Beafire zaimplementowano rozszerzenia (plugins) pozwalające na ich łatwe używanie w QtDesigner.
  • Zadanie definiowane w programie Beafire jest zapisywane w postaci pliku danych w formacie XML. Eksport i import do i z tego formatu jest realizowany przez  obiekty QXmlStreamReader i QXmlStreamWrite z biblioteki Qt.
  • Rysunki, statycznie i dynamicznie generowane na podstawie wprowadzanych danych, są zapisywane w formacie SVG (Scalable Vector Graphics). Obsługa tego formatu jest realizowana przy użyciu biblioteki simple-svg (https://github.com/ipa/simple-svg). Renderowanie rysunków jest wykorzystywane przez moduł SVG biblioteki Qt.
  • Przekazywanie danych między Beafire a BeafireKernel odbywa się z wykorzystaniem mechanizmu serializacji. Implementacja bazuje na bibliotece Cereal (https://uscilab.github.io/cereal/).
  • Do renderowania raportów z Beafire w formatach PDF lub HTML jest wykorzystywana biblioteka KDReports (https://github.com/KDAB/KDReports).
  • Obsługa wykresów w widgetach Beafire jest realizowana z wykorzystaniem biblioteki KDChart https://www.kdab.com/development-resources/qt-tools/kd-chart/
  • Wizualizacja pola temperatury w przekroju belki jest realizowana za pomocą biblioteki VTK i jej modułu QVTK dostarczającego odpowiednich widgetów.
  • Program BeafireKernel jest zaimplementowany w języku C++ (w standardzie C++11).
  • Wiersz poleceń programu BeafireKernel obsługiwany jest za pomocą biblioteki tclap (Templatized C++ Command Line Parser Library, http://tclap.sourceforge.net/).
  • Komunikacja między procesami - dokładniej komunikacja między BeafireKernel a programem Tochnog jest obsługiwana przez bibliotekę Boost.Process.
  • W obecnej wersji pakietu część obliczeniowa programu BeafireKernel jest zaimplementowana jako prototyp w języku Matlab. Komunikacja tego prototypu z częścią w języku C++ odbywa się za pośrednictwem plików w formacie HDF5.
  • Program BeafireKernel posiada opcję generowania raportów niezależnie od raportów w programie Beafire. Raporty są tworzone przez kompilację dokumentów LaTeX’a generowanych z szablonów w formacie {{mustache}}. Obsługa mustache jest realizowane przez bibliotekę mstch (https://github.com/no1msd/mstch).
  • Silnik MES do rozwiązywania problemu niestacjonarnego przepływu ciepła zbudowano na bazie zmodyfikowanej wersji OpenSource programu Tochnog (http://tochnog.sourceforge.net/).
  • Kompilacja programu Beafire jest zarządzana przez qmake. Kompilacja programu BeafireKernel i Tochnog jest zarządzana przez CMake.
  • Kod źródłowy pakietu Beafire jest zarządzany poprzez repozytorium git w serwisie Bitbucket.
  • Dokumentacja kodu źródłowego jest tworzona z użyciem Doxygen.
  • Zmiany w kodzie źródłowym pakietu Beafire są monitorowane z użyciem serwera Jenkins.
  • Binarna dystrybucja pakietu Beafire (programy Beafire, BeafireKernel, Tochnog i wymagane biblioteki DLL) w formacie AppImage jest generowana automatycznie za pośrednictwem serwera Jenkins.

Literatura:

Przłady analiz zrealizowancy opisywaną technologą można znaleźć w artykule:

Analiza obliczeniowa belek żelbetowych obciążonych pożarem // Adam Wosatko, Szymon Seręga, Maja Szlesińska, Roman Putanowicz // Inżynieria i Budownictwo. – 2019, R. 75, Nr 6, s. 269-274

Zalety/korzyści z zastosowania technologii: 

- Opracowany algorytm łącący jednowymiarowe zadanie mechaniczne z dwuwymiarowym zadaniem termicznym pozwala osiągnąć dużą wydajność obliczeń.

- Część GUI i silnik obliczeniowy mogą być wykorzystywane niezależnie, co pozwala na bazie tych komponentów budować nowe narzędzia.

- implementacja algorytmu została pozytywnie zweryfikowana przez porównanie z innymi programami oraz wynikami eksperymentalnymi dostępnymi w literaturze.

Zastosowanie rynkowe: 

Firmy informatyczne zajmujące się rozwijaniem oprogramowania w zakresie inżynierii lądowej, biura konstrukcyjne, jednostki badawcze zajmujące się analizą konstrukcji w warunkach pożarowych



Dawca technologii oferuje doradztwo związane z wdrożeniem
Doradztwo w zakresie: 

Zapewniam wsparcie w rozwijaniu i dostosowaniu kodu źródłowego do potrzeb klienta oraz wsparcie eksperckie w zakresie projektowania belek żelbetowych w warunkach pożarowych.


Dawca technologii:
Politechnika Krakwoska

Dane kontaktowe

dr inż. Roman Putanowicz
+48 12 6282546

Kontakt z ARP

<strong>Nazwa podmiotu / Imię i nazwisko </strong>:

Politechnika Krakwoska
<strong>Czy prawa własności do technologii mają również inne podmioty / osoby?</strong>:

Nie
<strong>Nazwa technologii</strong>:
Beafire - odporność ogniowa belek żelbetowych
<br/><strong>Forma ochrony</strong>:
Zastrzeżone know-how
<br/><br/><strong>Dojrzałość technologii</strong>:
TRL 4
<br/><br/><strong>Forma komercjalizacji</strong>:
Sprzedaż praw własności
<br/><br/><strong>Opis technologii</strong>:

Oprogramowanie Beafire jest narzędziem inżynierskim służącym do wyznaczania odporności ogniowej  belek żelbetowych. Oprócz wyznaczenia wartości odporoności ogniowej użytkownik ma możliwość monitorowania zmian temperatury w wybranym przekroju elementu oraz redystrybucji pól momentów zginających w wyniku lokalnych zmian sztywności elementu żelbetowego, poddanego

oddziaływaniu wysokiej temperatury. W obliczeniach przyjęto założenia zgodne z~zaleceniami inżynierskich norm projektowania konstrukcji żelbetowych (EN 1992-1-1, EN 1992-1-2).

Architektura pakietu

Na pakiet Beafire składają się trzy niezależne programy (executables):

  • Beafire - graficzny interfejs użytkownika. Program dostarcza okienkowy interfejs umożliwiający definiowanie zadania i wizualizację wyników, np. pola temperatury w przekroju belki. Dane wprowadzane przez użytkownika są zapisywane w pliku, który jest przesyłany do programu BeafireKernel w celu wykonania obliczeń.
  • BeafireKernel - silnik obliczeniowy.  Jest to program, który na podstawie danych zapisanych w pliku przeprowadza obliczenia odporności ogniowej. W nim zawarta jest implementacja opracowanego w projekcie podejścia do wyznaczania odporności ogniowej. Zadanie wyznaczania niestacjonarnego rozkładu temperatury jest delegowane do programu Tochnog.
  • Tochnog - jest to solver wykorzystujący Metodę Elementów Skończonych.
  • Komunikacja pomiędzy powyższymi komponentami odbywa się poprzez odpowiednio zaprojektowane pliki danych i standardowe mechanizmy komunikacji między procesami. 

    Opis rozwiązań
  • Program Beafire jest zaimplementowany w języku C++. Graficzny interfejs użytkownika zbudowano z wykorzystaniem biblioteki Qt (versja >=5). W celu ułatwienia konstruowania interfejsu dla większości widgetów specyficznych dla Beafire zaimplementowano rozszerzenia (plugins) pozwalające na ich łatwe używanie w QtDesigner.
  • Zadanie definiowane w programie Beafire jest zapisywane w postaci pliku danych w formacie XML. Eksport i import do i z tego formatu jest realizowany przez  obiekty QXmlStreamReader i QXmlStreamWrite z biblioteki Qt.
  • Rysunki, statycznie i dynamicznie generowane na podstawie wprowadzanych danych, są zapisywane w formacie SVG (Scalable Vector Graphics). Obsługa tego formatu jest realizowana przy użyciu biblioteki simple-svg (https://github.com/ipa/simple-svg). Renderowanie rysunków jest wykorzystywane przez moduł SVG biblioteki Qt.
  • Przekazywanie danych między Beafire a BeafireKernel odbywa się z wykorzystaniem mechanizmu serializacji. Implementacja bazuje na bibliotece Cereal (https://uscilab.github.io/cereal/).
  • Do renderowania raportów z Beafire w formatach PDF lub HTML jest wykorzystywana biblioteka KDReports (https://github.com/KDAB/KDReports).
  • Obsługa wykresów w widgetach Beafire jest realizowana z wykorzystaniem biblioteki KDChart https://www.kdab.com/development-resources/qt-tools/kd-chart/
  • Wizualizacja pola temperatury w przekroju belki jest realizowana za pomocą biblioteki VTK i jej modułu QVTK dostarczającego odpowiednich widgetów.
  • Program BeafireKernel jest zaimplementowany w języku C++ (w standardzie C++11).
  • Wiersz poleceń programu BeafireKernel obsługiwany jest za pomocą biblioteki tclap (Templatized C++ Command Line Parser Library, http://tclap.sourceforge.net/).
  • Komunikacja między procesami - dokładniej komunikacja między BeafireKernel a programem Tochnog jest obsługiwana przez bibliotekę Boost.Process.
  • W obecnej wersji pakietu część obliczeniowa programu BeafireKernel jest zaimplementowana jako prototyp w języku Matlab. Komunikacja tego prototypu z częścią w języku C++ odbywa się za pośrednictwem plików w formacie HDF5.
  • Program BeafireKernel posiada opcję generowania raportów niezależnie od raportów w programie Beafire. Raporty są tworzone przez kompilację dokumentów LaTeX’a generowanych z szablonów w formacie {{mustache}}. Obsługa mustache jest realizowane przez bibliotekę mstch (https://github.com/no1msd/mstch).
  • Silnik MES do rozwiązywania problemu niestacjonarnego przepływu ciepła zbudowano na bazie zmodyfikowanej wersji OpenSource programu Tochnog (http://tochnog.sourceforge.net/).
  • Kompilacja programu Beafire jest zarządzana przez qmake. Kompilacja programu BeafireKernel i Tochnog jest zarządzana przez CMake.
  • Kod źródłowy pakietu Beafire jest zarządzany poprzez repozytorium git w serwisie Bitbucket.
  • Dokumentacja kodu źródłowego jest tworzona z użyciem Doxygen.
  • Zmiany w kodzie źródłowym pakietu Beafire są monitorowane z użyciem serwera Jenkins.
  • Binarna dystrybucja pakietu Beafire (programy Beafire, BeafireKernel, Tochnog i wymagane biblioteki DLL) w formacie AppImage jest generowana automatycznie za pośrednictwem serwera Jenkins.

Literatura:

Przłady analiz zrealizowancy opisywaną technologą można znaleźć w artykule:

Analiza obliczeniowa belek żelbetowych obciążonych pożarem // Adam Wosatko, Szymon Seręga, Maja Szlesińska, Roman Putanowicz // Inżynieria i Budownictwo. – 2019, R. 75, Nr 6, s. 269-274


<strong>Zalety/korzyści z zastosowania technologii</strong>:

- Opracowany algorytm łącący jednowymiarowe zadanie mechaniczne z dwuwymiarowym zadaniem termicznym pozwala osiągnąć dużą wydajność obliczeń.

- Część GUI i silnik obliczeniowy mogą być wykorzystywane niezależnie, co pozwala na bazie tych komponentów budować nowe narzędzia.

- implementacja algorytmu została pozytywnie zweryfikowana przez porównanie z innymi programami oraz wynikami eksperymentalnymi dostępnymi w literaturze.


<strong>Zastosowanie rynkowe</strong>:

Firmy informatyczne zajmujące się rozwijaniem oprogramowania w zakresie inżynierii lądowej, biura konstrukcyjne, jednostki badawcze zajmujące się analizą konstrukcji w warunkach pożarowych


<strong>Słowa kluczowe</strong>:<br/>
odporność ogniowa, belki żelbetowe, MES, oprogramowanie inżynierskie, warunki pożarowe
<br/><br/><strong>Dawca zapewnia doradztwo związane z wdrożeniem</strong>:
Tak
<strong>Doradztwo w zakresie</strong>:

Zapewniam wsparcie w rozwijaniu i dostosowaniu kodu źródłowego do potrzeb klienta oraz wsparcie eksperckie w zakresie projektowania belek żelbetowych w warunkach pożarowych.




Kontakt:
dr inż. Roman Putanowicz
Roman.Putanowicz@L5.pk.edu.pl
+48 12 6282546
Dawcy - PDF