Uitvoer en herbegin¶
Analiseresultate bestaan as sodanig in die geheue en moet dus na toepaslike lêers geskryf word vir naverwerking, visualisering, herstel en herbegin. Omdat die lêerformaat, uitvoeritems en uitvoerfrekwensie volgens die doel verskil, bied FrontISTR verskeie uitvoerroetes vir verskillende gebruike.
FrontISTR-uitvoer bestaan uit drie stelsels: resultaatlêers wat analisewaardes stoor (!WRITE,RESULT), visualiseringslêers vir visualisering (!WRITE,VISUAL), en herbeginlêers wat die analisetoestand stoor (!RESTART). Die fisiese hoeveelhede wat in resultaat- en visualiseringslêers ingesluit word, word onderskeidelik met !OUTPUT_RES en !OUTPUT_VIS gekies.
Oorsig van funksies¶
Uitvoerinstellings is makliker om te orden as die volgende drie asse afsonderlik beskou word.
| As | Hoofinvoer | Rol |
|---|---|---|
| Uitvoerbestemming | !WRITE,RESULT, !WRITE,VISUAL, !RESTART | Bepaal die tipe lêer waarin resultate vir hul beoogde gebruik gestoor word. |
| Uitvoerveranderlikes | !OUTPUT_RES, !OUTPUT_VIS | Bepaal die fisiese hoeveelhede wat in resultaat- of visualiseringslêers ingesluit word. |
| Uitvoerfrekwensie | FREQUENCY | Bepaal hoeveel stappe tussen skryfaksies na ’n lêer verloop. |
!WRITE,RESULT aktiveer resultaatlêers en !OUTPUT_RES spesifiseer die uitvoerveranderlikes. !WRITE,VISUAL aktiveer visualiseringslêers en !OUTPUT_VIS spesifiseer die veranderlikes wat aan visualisering deurgegee word. In albei gevalle kan die uitvoerinterval met FREQUENCY beheer word. !WRITE is een kaart, en RESULT / VISUAL / FEMAP kan saam as parameters voorkom om uitvoerbestemmings te kies.
Die datareëls van !OUTPUT_RES en !OUTPUT_VIS lys name van uitvoerveranderlikes en ON / OFF. Deur GROUP te spesifiseer, kan die uitvoerteiken volgens groep beperk word. Raadpleeg die sleutelwoordverwysing vir die konkrete invoersintaksis en beskikbare datareëls.
!RESTART stoor die analisetoestand self, afsonderlik van resultaat- en visualiseringslêers. Herbeginlêers word gebruik om ’n analise ná ’n onderbreking vanuit dieselfde toestand voort te sit.
Keuse van uitvoer¶
Kies eers die uitvoer volgens die doel wat nagegaan moet word. Gebruik ’n resultaatlêer wanneer numeriese waardes vir naverwerking of ’n ander analise gebruik gaan word, en ’n visualiseringslêer wanneer vorms of verdelings met ’n visualiseringshulpmiddel nagegaan gaan word. As die analise gedeeltelik hervat moet kan word, aktiveer ’n herbeginlêer afsonderlik van normale resultaatuitvoer.
| Doel | Uitvoer om te kies | Hoofspesifikasie |
|---|---|---|
| Stoor analisewaardes vir naverwerking, vergelyking of ’n ander analise | Resultaatlêer | !WRITE,RESULT en !OUTPUT_RES |
| Kontroleer verdelings en vervormde vorms in ParaView of soortgelyke hulpmiddels | Visualiseringslêer | !WRITE,VISUAL, !OUTPUT_VIS, !VISUAL |
| Hervat ’n langlopende analise gedeeltelik | Herbeginlêer | !RESTART |
| Verminder uitvoergrootte | Voer slegs vereiste veranderlikes uit | ON / OFF en FREQUENCY in !OUTPUT_RES / !OUTPUT_VIS |
In grootskaalse analises kan die stoor van elke stap met die verstekuitvoerinstellings groot resultaat- en visualiseringslêers oplewer. Stel slegs die vereiste fisiese hoeveelhede op ON en hoeveelhede wat nie vir kontrole nodig is nie op OFF. As ’n fyn tydgeskiedenis nie nodig is nie, verhoog FREQUENCY om die uitvoerinterval growwer te maak.
’n Nuttige volgorde om uitvoerveranderlikes te bepaal, is "fisiese hoeveelheid om te inspekteer", "uitvoerbestemming" en "frekwensie". Om byvoorbeeld ’n spanningsverdeling in ParaView te inspekteer, aktiveer visualiseringslêers en kies NSTRESS of NMISES met !OUTPUT_VIS. Om kontakkraag numeries na te verwerk, aktiveer resultaatlêers en kies CONTACT_NFORCE of soortgelyk met !OUTPUT_RES.
Beskikbare fisiese hoeveelhede¶
Uitvoerveranderlikes word verdeel in resultate vir strukturele analise, dinamiese analise, hitte-analise, kontakanalise, element-spesifieke resultate en identifiserende metadata. Die tabel hieronder som die belangrikste veranderlikename, tipes en analisetipes waarin hulle gebruik word op. Vir ’n volledige lys veranderlikename en die sintaksis van datareëls, sien !OUTPUT_RES en !OUTPUT_VIS.
| Kategorie | Veranderlikenaam | Tipe | Hoofanalisetipe | Beskrywing |
|---|---|---|---|---|
| Basiese strukturele hoeveelhede | DISP, ROT, REACTION | Vektor | Statiese analise, dinamiese analise | Verplasing, rotasie en nodale reaksiekrag. ROT is geldig vir elemente met rotasievryheidsgrade. |
| Spanning | NSTRESS, ESTRESS, ISTRESS | Simmetriese tensor | Strukturele analise | Nodaal-gemiddelde spanning, elementspanning en spanning by integrasiepunte. |
| von Mises-spanning / hoofspanning | NMISES, EMISES, PRINC_NSTRESS, PRINC_ESTRESS, PRINCV_NSTRESS, PRINCV_ESTRESS | Skalaar, vektor | Strukturele analise | von Mises-spanning, hoofspanningswaardes en hoofspanningsrigtings. |
| Rek | NSTRAIN, ESTRAIN, ISTRAIN | Simmetriese tensor | Strukturele analise | Nodale rek, elementrek en rek by integrasiepunte. |
| Plastiese / termiese rek | PL_ISTRAIN, PL_ESTRAIN, TH_NSTRAIN, TH_ESTRAIN, TH_ISTRAIN | Skalaar, simmetriese tensor | Nie-lineêre strukturele analise, termiese-spanningsanalise | Ekwivalente plastiese rek en termiese rek. |
| Hoofrek | PRINC_NSTRAIN, PRINC_ESTRAIN, PRINCV_NSTRAIN, PRINCV_ESTRAIN | Skalaar, vektor | Strukturele analise | Hoofrekwaardes en hoofrekrigtings. |
| Dinamiese analise | VEL, ACC | Vektor | Dinamiese analise | Nodale snelheid en nodale versnelling. |
| Hitte-analise | TEMP | Skalaar | Warmtegeleidingsanalise | Nodale temperatuur. In resultaat- en visualiseringslêers vir hitte-analise word dit as die temperatuurveld uitgevoer. |
| Kontak | CONTACT_NFORCE, CONTACT_FRICTION, CONTACT_RELVEL, CONTACT_STATE, CONTACT_NTRACTION, CONTACT_FTRACTION | Vektor, skalaar | Kontakanalise | Normale kontakkraag, wrywingskrag, relatiewe glyspoed, kontaktoestand en kontakkraag per oppervlak-eenheid. |
| Balkelement | BEAM_NQM | 12-komponentwaarde | Strukturele analise met balkelemente | Snitkragte van balkelemente. |
| Identifikasie / toestand | NODE_ID, ELEM_ID, SECTION_ID, MATERIAL_ID, ELEMACT, YIELD_RATIO | Skalaar | Strukturele analise, visualisering | Identifikasie-inligting vir nodusse, elemente, snitte en materiale; elementaktiveringstoestand; en vloeiverhouding. ELEMACT voer 1 uit vir aktiewe elemente en 0 vir onaktiewe (gedeaktiveerde) elemente. |
| Hulpinligting vir skulpe | SHELL_LAYER, SHELL_SURFACE | Skalaar | Strukturele analise met skulpelemente | Hulpinligting wat skulplaag-uitvoer en skulpoppervlakke identifiseer. |
By verstek is DISP, ROT, NSTRESS en NMISES ON. Of betekenisvolle waardes werklik uitgevoer word, hang egter af van die analisetipe, elementtipe, materiaalmodel en kontakinstellings. VEL en ACC word byvoorbeeld in dinamiese analise gebruik, en CONTACT_* word gebruik wanneer kontakinligting in kontakanalise gegenereer word.
Uitvoer per skulplaag¶
Skulpelemente het verskeie integrasiepunte of lae deur die dikte, sodat spanning- en rekwaardes selfs binne dieselfde element volgens laag of oppervlak kan verskil. Met slegs gewone nodaal-gemiddelde waardes of elementwaardes is dit moeilik om te onderskei aan watter laag of oppervlak ’n waarde behoort.
Wanneer SHELL_LAYER op ON gestel is, word resultate vir die + en - kante van elke laag van ’n gelamineerde skulp afsonderlik uitgevoer. Die uitgevoerde spanning- en rekkomponente bevat identifiseerders vir die laagnommer en oppervlakkant, wat evaluering van spanningsverdelings deur die dikte en skade per laag moontlik maak.
SHELL_SURFACE is hulpinligting om skulpoppervlakke soos die boonste en onderste oppervlak te identifiseer. Wanneer skulplaag-resultate gevisualiseer word, aktiveer SHELL_LAYER en die vereiste spanning-/rekveranderlikes, en kies in die visualiseringshulpmiddel die resultaatkomponent wat met die teikenlaag of -oppervlak ooreenstem.
Omdat skulplaag-uitvoer die aantal uitvoerkomponente vergroot, neem die lêergrootte toe vir modelle met baie lae. Dit is verkieslik om uitvoer tot die vereiste spanning- en rekveranderlikes te beperk.
Uitvoerbestemmings¶
Resultaatlêers en visualiseringslêers verskil in doel en stoorformaat. Albei kan in dieselfde analise uitgevoer word, of slegs een kan uitgevoer word.
Resultaatlêers¶
Resultaatlêers word met !WRITE,RESULT geaktiveer. Analiseresultate word as FrontISTR / HEC-MW-resultaatdata gestoor en vir numeriese naverwerking of as invoer vir ’n ander analise gebruik. Uitvoerveranderlikes word met !OUTPUT_RES gekies.
!WRITE,RESULT word ook as die RESULT-parameter van die !WRITE-kaart geïmplementeer en is ’n uitvoerbestemmingsopsie naas visualiserings- en FEMAP-uitvoer.
Resultaatlêers kan verplasing, spanning, rek, reaksiekragte, kontakinligting en ander hoeveelhede vir strukturele analise stoor, en temperatuurvelde vir hitte-analise. Die uitvoerinterval per stap word met FREQUENCY gespesifiseer. Raadpleeg die uitvoergids vir spesifieke lêername, liggings en hoe dit ná uitvoering nagegaan word.
Resultaatlêers (uitbreiding .res) is teksdata met die volgende struktuur. Die formaatweergawe en kommentaar verskyn eerste, gevolg deur globale veranderlikes en uiteindelik uitvoerveranderlikes vir elke nodus en element.
*fstrresult 2.0
*comment
<kommentaarreël>
*global
<aantal globale veranderlikes>
<vryheidsgrade van globale veranderlikes>
<name van globale veranderlikes>
<waardes van globale veranderlikes>
...
*data
<aantal nodusse> <aantal elemente>
<aantal nodale data-items> <aantal elementdata-items>
<vryheidsgrade van nodale data> ...
<name van nodale data>
...
<waardes van nodale data>
...
<vryheidsgrade van elementdata> ...
<name van elementdata>
...
<waardes van elementdata>
...
Loglêers¶
Loglêers (uitbreiding .log) is opsommingslêers wat altyd ná analise uitgevoer word. Benewens fisiese hoeveelhede vir elke nodus en element, word maksimum-/minimumwaardes van komponente van verplasing, rek en spanning uitgevoer. In modale analise word eiewaardes en eievektorwaardes uitgevoer. Die LOG-parameter van !WRITE beheer die uitvoerinhoud. Raadpleeg die uitvoergids vir lêername en liggings.
Visualiseringslêers¶
Visualiseringslêers word met !WRITE,VISUAL geaktiveer. Hulle omskep die maas- en resultaatdata na ’n formaat vir visualiseringshulpmiddels en voer dit uit. Uitvoerveranderlikes word met !OUTPUT_VIS gekies, en die formaat en visualiseringsvoorwaardes word met !VISUAL gespesifiseer.
!WRITE,VISUAL is nie ’n onafhanklike sleutelwoord nie; dit word as die VISUAL-parameter van die !WRITE-kaart geïmplementeer en skakel die uitvoerbestemming op dieselfde vlak as !WRITE,RESULT / !WRITE,FEMAP (fstr_ctrl_get_WRITE in fistr1/src/common/fstr_ctrl_common.f90).
Om visualisering te aktiveer, moet minstens die visualiseringsoppervlak en uitvoerformaat op die !VISUAL-kaart gespesifiseer word. Die volgende is die minimum datastel.
Die surface_num- en !surface-spesifikasies kan nie weggelaat word nie. Sien !VISUAL vir gedetailleerde sintaksis en beskikbare opsies.
Die belangrikste visualiseringsformate is soos volg.
| Formaat | Doel |
|---|---|
| VTK | Gebruik vir visualisering in ParaView en soortgelyke hulpmiddels. |
| AVS (UCD) | Gebruik vir visualisering en data-uitruiling in AVS / UCD-formaat. |
| BMP | Voer visualiseringsresultate as beelde uit. |
| NEU | Gebruik vir data-uitruiling in FEMAP-neutrale formaat. |
Visualiseringslêers is makliker vir visualiseringshulpmiddels om direk te hanteer as resultaatlêers, maar hul grootte neem toe volgens die gekose formaat en aantal veranderlikes. Vir grootskaalse modelle moet slegs die veranderlikes wat vir vertoning nodig is met !OUTPUT_VIS geaktiveer word.
Herbegin¶
Herbegin is ’n funksie om die interne toestand te stoor op die punt waar ’n analise onderbreek word en die berekening in die volgende uitvoering vanuit dieselfde toestand voort te sit. Gewone resultaatlêers word vir naverwerking uitgevoer, terwyl herbeginlêers toestand stoor sodat die oplosser die berekening kan voortsit.
Wanneer n in !RESTART, FREQUENCY=n positief is, word ’n herbeginlêer met die gespesifiseerde stapinterval geskryf. Wanneer n negatief is, word ’n bestaande herbeginlêer tydens die aanvang van uitvoering gelees, waarna herbeginlêers met die absolute waarde |n| as uitvoerinterval geskryf word.
Vir herbegin van strukturele analise word die huidige stap, substap, kumulatiewe stap, tyd, tydinkrement, lasgeskiedenis, verplasing, eksterne krag, spanning en rek by elke Gauss-punt, interne materiaaltoestandsveranderlikes, kontaktoestand en ander data gestoor. Dinamiese analise stoor daarby die dinamiese toestand wat nodig is om tydintegrasie te hervat, insluitend snelheid en versnelling, rekenergie, huidige tyd en tydinkrement. Hitte-analise stoor die stapnommer, tyd en temperatuurveld, en herstel die temperatuurveld as die begintoestand wanneer dit gelees word.
Skryftydsberekening en hervatgedrag vir herbegin van statiese analise¶
Vir herbegin in statiese analise (fstr_solve_NLGEOM) is daar twee skryfroetes, en hul gedrag by hervatting verskil.
- Skryf tydens ’n substap: ’n Lêer word binne die substaplus geskryf wanneer
step_count’n veelvoud vanFREQUENCYword. Die aangetekende tydinligting word as die "begintyd van die huidige stap" gestoor, en die laslys van die vorige stap vergesel dit. - Skryf aan die einde van ’n stap: ’n Lêer word altyd geskryf onmiddellik nadat die substaplus van elke lasstap voltooi is, ongeag of die stap ’n veelvoud van
FREQUENCYis. Die aangetekende tydinligting word as die "stapeindtyd" gestoor, en die laslys vir daardie stap vergesel dit.
Wanneer gelees word, bepaal FrontISTR of die stap voltooi is deur na te gaan of die aangetekende "huidige tyd" en "verwysingstyd" ooreenstem (fstr_read_restart in fstr_Restart.f90).
| Toestand tydens skryf | Gedrag by hervatting |
|---|---|
| Tydens ’n substap | Gaan voort vanaf die volgende substap van dieselfde stap. Dit erf die substapposisie ten tyde van skryf en voer die oorblywende substaplus uit. |
| Einde van stap | Begin by die eerste substap van die volgende stap. Dit verhoog cstep met 1, stel substep=1 terug en sit dan die analise voort. |
Dus verskil die stapnommer en tydverwysing ná hervatting selfs met dieselfde FREQUENCY-instelling, afhangend van wanneer geskryf is (tydens ’n substap / aan die einde van ’n stap). Veral word ’n skryfaksie aan die einde van ’n stap altyd aan die einde van elke stap uitgevoer, onafhanklik van die FREQUENCY-instelling.
Skryftydsberekening en hervatgedrag vir herbegin van dinamiese analise¶
Herbegin vir tydgeskiedenis-dinamiese analise onderskei ook tussen skryf tydens ’n substap en skryf aan die einde van ’n stap. Tydens ’n substap word ’n lêer geskryf wanneer die kumulatiewe substaptelling step_count ’n veelvoud van FREQUENCY word; aan die einde van ’n stap word ’n lêer aan die einde van daardie stap geskryf, ongeag FREQUENCY.
Wanneer gelees word, word die hervatposisie herstel vanuit die gestoorde stapnommer, substapnommer en kumulatiewe substaptelling. Die huidige formaat (restart_version >= 5) gebruik ’n kop wat met statiese analise gedeel word en stoor die huidige tyd, tydinkrement, Newton-iterasiestatistiek en toestand van outomatiese inkrementering. Dit laat dinamiese analise met veelvuldige !STEP-kaarte en outomatiese inkrementering/cutback toe om die tydverwysing en tydinkrement ná herbegin oor te dra. Ouer herbeginlêers vir dinamiese analise behou gedeeltelike leesversoenbaarheid, maar nuwe analises behoort die huidige formaat te gebruik.
Skryf van !STEP-kaarte vir herbegin¶
Wanneer vanaf ’n herbegin hervat word, lees FrontISTR die !STEP-kaarte in die cnt-lêer as die "reeks stappe om ná hervatting uit te voer" en verwerk dit altyd in volgorde vanaf die eerste (tot_step=1). Die stapnommer in die gelaaide herbegininligting word gebruik om die kumulatiewe stapnommer wat op die skerm vertoon word in lyn te bring en beïnvloed nie die !STEP-indeks in die cnt-lêer self nie. Verder word in die huidige formaat die verwysingstyd gesamentlik by die starttime van elke !STEP in die cnt-lêer gevoeg wanneer die herbegin gelees word, sodat die tydlyn die herbegintyd as oorsprong gebruik.
Berei die cnt-lêer vir herbegin dus volgens die volgende beleid voor.
| Hoe die uitvoering onderbreek is | Reeks !STEP-kaarte om in cnt te behou |
|---|---|
| Geskryf tydens ’n substap (stap onvoltooid) | Hou die onderbreekte stap eerste. Laat die daaropvolgende nog nie uitgevoerde stappe daarop volg. |
| Geskryf aan die einde van ’n stap (stap voltooi) | Verwyder voltooide stappe en plaas die volgende stap wat uitgevoer moet word eerste. |
In albei gevalle is die basiese reël om stappe wat reeds voltooi is uit die cnt-lêer te verwyder. Omdat die herbegintyd outomaties by starttime gevoeg word, kan die cnt-lêer ’n 0-oorsprong (of relatiewe stapbegintye) gebruik. Verwysings soos randvoorwaardes en laste moet slegs vir die !STEP-kaarte wat oorbly in die cnt-lêer behou word. Dieselfde beleid geld vir herbegin van dinamiese analise met veelvuldige !STEP-kaarte.
’n Tipiese herbeginwerkvloei is soos volg.
- Spesifiseer in die aanvanklike uitvoering
!RESTART, FREQUENCY=nen skryf ’n herbeginlêer. - Spesifiseer in die uitvoering wat die analise hervat
!RESTART, FREQUENCY=-n. - FrontISTR lees die herbeginlêer tydens aanvang en skryf daarna elke
nstappe ’n nuwe toestand.
Raadpleeg die uitvoergids vir herbeginlêernaamgewing, plasing en spesifikasie tydens uitvoering. Daar is ook gedeeltelike leesversoenbaarheid met lêers in ouer formate, maar nuwe analises behoort die huidige formaat te gebruik.
Verwante onderwerpe¶
- Seriële uitvoering — Basiese beginsels van lêerplasing en uitvoerkontrole tydens analiseuitvoering.
- !OUTPUT_RES, !OUTPUT_VIS — Spesifikasie van veranderlikes wat na resultaat- en visualiseringslêers uitgevoer word.
- !WRITE — Aktivering van resultaatlêer-, visualiseringslêer- en loguitvoer en spesifikasie van uitvoerfrekwensie (
RESULT/VISUAL/LOG/FEMAP-parameters). - !VISUAL — Spesifikasie van visualiseringsoppervlakke en uitvoerformate (insluitend ’n voorbeeld van die minimum datastel).
- !RESTART — Spesifikasie vir lees en skryf van herbeginlêers.
- Analisetipes — Hoofresultaatitems vir elke analisetipe.
- Kontak en inbedding — Betekenis van kontakuitvoer en hantering van kontaktoestande.
- Stapbeheer — Verwantskap met uitvoerstappe en tydpunte.