Uitvoer en herstart¶
Analyseresultaten bestaan als zodanig in het geheugen en moeten daarom naar geschikte bestanden worden geschreven voor nabewerking, visualisatie, herstel en herstart. Omdat bestandsformaat, uitvoeritems en uitvoerfrequentie afhankelijk van het doel verschillen, biedt FrontISTR meerdere uitvoerpaden voor verschillende toepassingen.
De uitvoer van FrontISTR bestaat uit drie systemen: resultaatbestanden die analysewaarden opslaan (!WRITE,RESULT), visualisatiebestanden voor visualisatie (!WRITE,VISUAL) en herstartbestanden die de analysetoestand opslaan (!RESTART). De fysische grootheden in resultaat- en visualisatiebestanden worden respectievelijk geselecteerd met !OUTPUT_RES en !OUTPUT_VIS.
Overzicht van functies¶
Uitvoerinstellingen zijn gemakkelijker te ordenen door de volgende drie assen afzonderlijk te beschouwen.
| As | Belangrijkste invoer | Rol |
|---|---|---|
| Uitvoerbestemming | !WRITE,RESULT, !WRITE,VISUAL, !RESTART |
Bepaalt het type bestand waarin resultaten voor het beoogde gebruik worden opgeslagen. |
| Uitvoervariabelen | !OUTPUT_RES, !OUTPUT_VIS |
Bepaalt welke fysische grootheden in resultaat- of visualisatiebestanden worden opgenomen. |
| Uitvoerfrequentie | FREQUENCY |
Bepaalt hoeveel stappen tussen schrijfbewerkingen naar een bestand verlopen. |
!WRITE,RESULT schakelt resultaatbestanden in en !OUTPUT_RES specificeert de uitvoervariabelen. !WRITE,VISUAL schakelt visualisatiebestanden in en !OUTPUT_VIS specificeert de variabelen die aan de visualisatie worden doorgegeven. In beide gevallen kan het uitvoerinterval met FREQUENCY worden geregeld. !WRITE is één kaart en RESULT / VISUAL / FEMAP kunnen naast elkaar bestaan als parameters die uitvoerbestemmingen selecteren.
De gegevensregels van !OUTPUT_RES en !OUTPUT_VIS geven namen van uitvoervariabelen en ON / OFF op. Met GROUP kan het uitvoerdoel tot een groep worden beperkt. Zie de trefwoordreferentie voor de specifieke invoersyntaxis en beschikbare gegevensregels.
!RESTART slaat de analysetoestand zelf op, los van resultaat- en visualisatiebestanden. Herstartbestanden worden gebruikt om een analyse na een onderbreking vanuit dezelfde toestand te hervatten.
Uitvoer kiezen¶
Kies de uitvoer eerst op basis van het doel dat u wilt controleren. Gebruik een resultaatbestand wanneer numerieke waarden voor nabewerking of een andere analyse worden gebruikt, en een visualisatiebestand wanneer vormen of verdelingen met een visualisatietool worden gecontroleerd. Als de analyse tussentijds moet kunnen worden hervat, schakel dan afzonderlijk van de normale resultaatuitvoer een herstartbestand in.
| Doel | Te selecteren uitvoer | Belangrijkste specificatie |
|---|---|---|
| Analysewaarden opslaan voor nabewerking, vergelijking of een andere analyse | Resultaatbestand | !WRITE,RESULT en !OUTPUT_RES |
| Verdelingen en vervormde vormen controleren in ParaView of vergelijkbare tools | Visualisatiebestand | !WRITE,VISUAL, !OUTPUT_VIS, !VISUAL |
| Een langdurige analyse tussentijds hervatten | Herstartbestand | !RESTART |
| Uitvoergrootte verkleinen | Alleen vereiste variabelen uitvoeren | ON / OFF en FREQUENCY in !OUTPUT_RES / !OUTPUT_VIS |
Bij grootschalige analyses kan het opslaan van elke stap met de standaard uitvoerinstellingen resultaat- en visualisatiebestanden groot maken. Zet alleen de vereiste fysische grootheden op ON en grootheden die niet voor controle nodig zijn op OFF. Als een fijnmazige tijdgeschiedenis niet nodig is, verhoog dan FREQUENCY om het uitvoerinterval grover te maken.
Een nuttige volgorde voor het bepalen van uitvoervariabelen is "te inspecteren fysische grootheid", "uitvoerbestemming" en "frequentie". Om bijvoorbeeld een spanningsverdeling in ParaView te inspecteren, schakelt u visualisatiebestanden in en selecteert u NSTRESS of NMISES met !OUTPUT_VIS. Om contactkracht numeriek na te bewerken, schakelt u resultaatbestanden in en selecteert u CONTACT_NFORCE of een vergelijkbare variabele met !OUTPUT_RES.
Beschikbare fysische grootheden¶
Uitvoervariabelen zijn verdeeld in resultaten voor structurele analyse, dynamische analyse, thermische analyse, contactanalyse, elementspecifieke resultaten en identificatiemetadata. De onderstaande tabel vat de belangrijkste variabelenamen, typen en analysetypen samen waarin ze worden gebruikt. Zie !OUTPUT_RES en !OUTPUT_VIS voor een volledige lijst van variabelenamen en de syntaxis van gegevensregels.
| Categorie | Variabelenaam | Type | Belangrijkste analysetype | Beschrijving |
|---|---|---|---|---|
| Basale structurele grootheden | DISP, ROT, REACTION |
Vector | Statische analyse, dynamische analyse | Verplaatsing, rotatie en nodale reactiekracht. ROT is geldig voor elementen met rotatievrijheidsgraden. |
| Spanning | NSTRESS, ESTRESS, ISTRESS |
Symmetrische tensor | Structurele analyse | Over knopen gemiddelde spanning, elementspanning en spanning op integratiepunten. |
| von Mises-spanning / hoofdspanning | NMISES, EMISES, PRINC_NSTRESS, PRINC_ESTRESS, PRINCV_NSTRESS, PRINCV_ESTRESS |
Scalar, vector | Structurele analyse | von Mises-spanning, waarden van hoofdspanningen en richtingen van hoofdspanningen. |
| Rek | NSTRAIN, ESTRAIN, ISTRAIN |
Symmetrische tensor | Structurele analyse | Nodale rek, elementrek en rek op integratiepunten. |
| Plastische / thermische rek | PL_ISTRAIN, PL_ESTRAIN, TH_NSTRAIN, TH_ESTRAIN, TH_ISTRAIN |
Scalar, symmetrische tensor | Niet-lineaire structurele analyse, thermische-spanningsanalyse | Equivalente plastische rek en thermische rek. |
| Hoofdrek | PRINC_NSTRAIN, PRINC_ESTRAIN, PRINCV_NSTRAIN, PRINCV_ESTRAIN |
Scalar, vector | Structurele analyse | Waarden en richtingen van hoofdrekken. |
| Dynamische analyse | VEL, ACC |
Vector | Dynamische analyse | Nodale snelheid en nodale versnelling. |
| Thermische analyse | TEMP |
Scalar | Warmtegeleidingsanalyse | Nodale temperatuur. In resultaat- en visualisatiebestanden van thermische analyses wordt deze als temperatuurveld uitgevoerd. |
| Contact | CONTACT_NFORCE, CONTACT_FRICTION, CONTACT_RELVEL, CONTACT_STATE, CONTACT_NTRACTION, CONTACT_FTRACTION |
Vector, scalar | Contactanalyse | Normale contactkracht, wrijvingskracht, relatieve glijsnelheid, contacttoestand en contactkracht per oppervlakte-eenheid. |
| Balkelement | BEAM_NQM |
Waarde met 12 componenten | Structurele analyse met balkelementen | Doorsnedekrachten van balkelementen. |
| Identificatie / toestand | NODE_ID, ELEM_ID, SECTION_ID, MATERIAL_ID, ELEMACT, YIELD_RATIO |
Scalar | Structurele analyse, visualisatie | Identificatie-informatie voor knopen, elementen, doorsneden en materialen; elementactiveringstoestand; en vloeiverhouding. ELEMACT voert 1 uit voor actieve elementen en 0 voor inactieve (gedeactiveerde) elementen. |
| Hulpinformatie voor schalen | SHELL_LAYER, SHELL_SURFACE |
Scalar | Structurele analyse met schaalelementen | Hulpinformatie voor identificatie van uitvoer per schaallaag en schaaloppervlakken. |
Standaard staan DISP, ROT, NSTRESS en NMISES op ON. Of daadwerkelijk betekenisvolle waarden worden uitgevoerd, hangt echter af van analysetype, elementtype, materiaalmodel en contactinstellingen. VEL en ACC worden bijvoorbeeld gebruikt in dynamische analyse en CONTACT_* wanneer contactinformatie in een contactanalyse wordt gegenereerd.
Uitvoer per schaallaag¶
Schaalelementen hebben meerdere integratiepunten of lagen over de dikte, waardoor spanning en rek per laag of oppervlak kunnen verschillen, zelfs binnen hetzelfde element. Met alleen gewone over knopen gemiddelde waarden of elementwaarden is moeilijk te onderscheiden bij welke laag of welk oppervlak een waarde hoort.
Wanneer SHELL_LAYER op ON staat, worden resultaten voor de + en - zijde van elke laag van een gelamineerde schaal afzonderlijk uitgevoerd. De uitgevoerde spannings- en rekcomponenten bevatten identificatoren voor laagnummer en oppervlakzijde, zodat spanningsverdelingen over de dikte en schade per laag kunnen worden beoordeeld.
SHELL_SURFACE is hulpinformatie om schaaloppervlakken zoals boven- en onderzijde te identificeren. Schakel bij het visualiseren van resultaten per schaallaag SHELL_LAYER en de vereiste spannings-/rekvariabelen in en selecteer in de visualisatietool de resultaatcomponent die overeenkomt met de gewenste laag of het gewenste oppervlak.
Omdat uitvoer per schaallaag het aantal uitvoercomponenten vergroot, neemt de bestandsgrootte toe bij modellen met veel lagen. Het verdient de voorkeur de uitvoer te beperken tot de vereiste spannings- en rekvariabelen.
Uitvoerbestemmingen¶
Resultaatbestanden en visualisatiebestanden verschillen in doel en opslagformaat. Beide kunnen in dezelfde analyse worden uitgevoerd, of slechts één ervan.
Resultaatbestanden¶
Resultaatbestanden worden ingeschakeld met !WRITE,RESULT. Analyseresultaten worden opgeslagen als FrontISTR / HEC-MW-resultaatgegevens en gebruikt voor numerieke nabewerking of als invoer voor een andere analyse. Uitvoervariabelen worden met !OUTPUT_RES geselecteerd.
!WRITE,RESULT is ook geïmplementeerd als de parameter RESULT van de kaart !WRITE en is een uitvoerbestemmingsoptie naast visualisatie- en FEMAP-uitvoer.
Resultaatbestanden kunnen voor structurele analyses verplaatsing, spanning, rek, reactiekrachten, contactinformatie en andere grootheden opslaan, en voor thermische analyses temperatuurvelden. Het uitvoerinterval per stap wordt met FREQUENCY opgegeven. Zie de uitvoeringsgids voor specifieke bestandsnamen, locaties en controle na uitvoering.
Resultaatbestanden (extensie .res) zijn tekstgegevens met de volgende structuur. Eerst verschijnen de formaatversie en een commentaar, vervolgens globale variabelen en ten slotte uitvoervariabelen voor elke knoop en elk element.
*fstrresult 2.0
*comment
<commentaarregel>
*global
<aantal globale variabelen>
<vrijheidsgraden van globale variabelen>
<namen van globale variabelen>
<waarden van globale variabelen>
...
*data
<aantal knopen> <aantal elementen>
<aantal nodale gegevensitems> <aantal elementgegevensitems>
<vrijheidsgraden van nodale gegevens> ...
<namen van nodale gegevens>
...
<waarden van nodale gegevens>
...
<vrijheidsgraden van elementgegevens> ...
<namen van elementgegevens>
...
<waarden van elementgegevens>
...
Logbestanden¶
Logbestanden (extensie .log) zijn samenvattingsbestanden die na de analyse altijd worden uitgevoerd. Naast fysische grootheden voor elke knoop en elk element worden maximum- en minimumwaarden van verplaatsings-, rek- en spanningscomponenten uitgevoerd. Bij modale analyse worden eigenwaarden en eigenvectorwaarden uitgevoerd. De parameter LOG van !WRITE regelt de uitvoerinhoud. Zie de uitvoeringsgids voor bestandsnamen en locaties.
Visualisatiebestanden¶
Visualisatiebestanden worden ingeschakeld met !WRITE,VISUAL. Ze zetten de maas- en resultaatgegevens om naar een formaat voor visualisatietools en voeren dit uit. Uitvoervariabelen worden geselecteerd met !OUTPUT_VIS, en formaat en visualisatievoorwaarden worden opgegeven met !VISUAL.
!WRITE,VISUAL is geen zelfstandig trefwoord; het is geïmplementeerd als de parameter VISUAL van de kaart !WRITE, waarmee de uitvoerbestemming op hetzelfde niveau als !WRITE,RESULT / !WRITE,FEMAP wordt omgeschakeld (fstr_ctrl_get_WRITE in fistr1/src/common/fstr_ctrl_common.f90).
Om visualisatie in te schakelen, moeten op de kaart !VISUAL minimaal het visualisatieoppervlak en het uitvoerformaat worden opgegeven. Hieronder staat de minimale gegevensset.
De specificaties surface_num en !surface mogen niet worden weggelaten. Zie !VISUAL voor gedetailleerde syntaxis en beschikbare opties.
De belangrijkste visualisatieformaten zijn als volgt.
| Formaat | Doel |
|---|---|
| VTK | Gebruikt voor visualisatie in ParaView en vergelijkbare tools. |
| AVS (UCD) | Gebruikt voor visualisatie en gegevensuitwisseling in AVS / UCD-formaat. |
| BMP | Voert visualisatieresultaten uit als afbeeldingen. |
| NEU | Gebruikt voor gegevensuitwisseling in FEMAP-neutral-formaat. |
Visualisatiebestanden zijn voor visualisatietools directer te verwerken dan resultaatbestanden, maar hun grootte neemt toe afhankelijk van het geselecteerde formaat en het aantal variabelen. Schakel bij grootschalige modellen met !OUTPUT_VIS alleen de voor weergave benodigde variabelen in.
Herstart¶
Herstart is een functie om de interne toestand op te slaan op het punt waar een analyse wordt onderbroken en de berekening in een volgende uitvoering vanuit dezelfde toestand te hervatten. Gewone resultaatbestanden zijn bedoeld voor nabewerking, terwijl herstartbestanden toestand opslaan zodat de solver de berekening kan voortzetten.
Wanneer n in !RESTART, FREQUENCY=n positief is, wordt een herstartbestand met het opgegeven stapinterval geschreven. Wanneer n negatief is, wordt bij het starten van de uitvoering een bestaand herstartbestand gelezen en worden daarna herstartbestanden geschreven met de absolute waarde |n| als uitvoerinterval.
Voor herstart van structurele analyse worden onder andere de huidige stap, substap, cumulatieve stap, tijd, tijdstap, belastingsgeschiedenis, verplaatsing, externe kracht, spanning en rek op elk Gauss-punt, interne toestandsvariabelen van materialen en contacttoestand opgeslagen. Dynamische analyse slaat bovendien de dynamische toestand op die nodig is om de tijdsintegratie te hervatten, waaronder snelheid en versnelling, rekenergie, huidige tijd en tijdstap. Thermische analyse slaat stapnummer, tijd en temperatuurveld op en herstelt bij inlezen het temperatuurveld als begintoestand.
Schrijfmoment en hervattingsgedrag bij herstart van statische analyse¶
Voor herstart in statische analyse (fstr_solve_NLGEOM) bestaan twee schrijfpaden, met verschillend hervattingsgedrag.
- Schrijven tijdens een substap: Binnen de substaplus wordt een bestand geschreven wanneer
step_counteen veelvoud vanFREQUENCYwordt. De geregistreerde tijdinformatie wordt opgeslagen als de "begintijd van de huidige stap" en de belastingslijst van de vorige stap wordt erbij opgeslagen. - Schrijven aan het einde van een stap: Direct nadat de substaplus van elke belastingsstap is voltooid, wordt altijd een bestand geschreven, ongeacht of de stap een veelvoud van
FREQUENCYis. De geregistreerde tijdinformatie wordt opgeslagen als de "eindtijd van de stap" en de belastingslijst van die stap wordt erbij opgeslagen.
Bij het lezen bepaalt FrontISTR of de stap voltooid is aan de hand van het overeenkomen van de geregistreerde "huidige tijd" en "referentietijd" (fstr_read_restart in fstr_Restart.f90).
| Toestand bij schrijven | Gedrag bij hervatten |
|---|---|
| Tijdens een substap | Gaat verder vanaf de volgende substap van dezelfde stap. De substappositie op het moment van schrijven wordt overgenomen en de resterende substaplus wordt uitgevoerd. |
| Einde van stap | Begint bij de eerste substap van de volgende stap. cstep wordt met 1 verhoogd, substep=1 wordt ingesteld en daarna wordt de analyse voortgezet. |
Daarom verschillen, zelfs met dezelfde instelling van FREQUENCY, het stapnummer en de tijdreferentie na hervatting afhankelijk van het schrijfmoment (tijdens een substap / aan het einde van een stap). In het bijzonder wordt aan het einde van elke stap altijd geschreven, onafhankelijk van de instelling FREQUENCY.
Schrijfmoment en hervattingsgedrag bij herstart van dynamische analyse¶
Ook bij herstart van dynamische tijdgeschiedenisanalyse wordt onderscheid gemaakt tussen schrijven tijdens een substap en schrijven aan het einde van een stap. Tijdens een substap wordt een bestand geschreven wanneer het cumulatieve substapaantal step_count een veelvoud van FREQUENCY wordt; aan het einde van een stap wordt een bestand geschreven aan het einde van die stap, ongeacht FREQUENCY.
Bij het lezen wordt de hervattingspositie hersteld uit het opgeslagen stapnummer, substapnummer en cumulatieve substapaantal. Het huidige formaat (restart_version >= 5) gebruikt een header die gemeenschappelijk is met statische analyse en slaat huidige tijd, tijdstap, Newton-iteratiestatistieken en toestand van automatische stapgrootte op. Hierdoor kan dynamische analyse met meerdere !STEP-kaarten en automatische stapgrootte/cutback na herstart de tijdreferentie en tijdstap overnemen. Oudere herstartbestanden van dynamische analyses behouden gedeeltelijke leescompatibiliteit, maar nieuwe analyses moeten het huidige formaat gebruiken.
!STEP-kaarten schrijven voor herstart¶
Bij hervatting vanuit een herstart leest FrontISTR de !STEP-kaarten in het cnt-bestand als de "reeks stappen die na hervatting moet worden uitgevoerd" en verwerkt deze altijd vanaf de eerste in volgorde (tot_step=1). Het stapnummer in de geladen herstartinformatie wordt gebruikt om het cumulatieve stapnummer dat op het scherm wordt weergegeven uit te lijnen en beïnvloedt de !STEP-index in het cnt-bestand zelf niet. Bovendien wordt in het huidige formaat bij het lezen van de herstart de referentietijd collectief aan de starttime van elke !STEP in het cnt-bestand toegevoegd, zodat de tijdlijn wordt uitgelijnd met de herstarttijd als oorsprong.
Bereid daarom het cnt-bestand voor herstart volgens het volgende beleid voor.
| Hoe de uitvoering werd onderbroken | Bereik van !STEP-kaarten dat in cnt moet blijven |
|---|---|
| Geschreven tijdens een substap (stap onvoltooid) | Laat de onderbroken stap als eerste staan. Laat daarna de volgende nog niet uitgevoerde stappen volgen. |
| Geschreven aan het einde van een stap (stap voltooid) | Verwijder voltooide stappen en plaats de volgende uit te voeren stap als eerste. |
In beide gevallen is de basisregel: verwijder stappen die al zijn voltooid uit het cnt-bestand. Omdat de herstarttijd automatisch aan starttime wordt toegevoegd, kan het cnt-bestand een nulpunt (of relatieve begintijden van stappen) gebruiken. Verwijzingen zoals randvoorwaarden en belastingen moeten alleen voor de resterende !STEP-kaarten in het cnt-bestand worden behouden. Hetzelfde beleid geldt voor herstart van dynamische analyse met meerdere !STEP-kaarten.
Een typische herstartworkflow is als volgt.
- Geef in de eerste uitvoering
!RESTART, FREQUENCY=nop en schrijf een herstartbestand. - Geef in de uitvoering die de analyse hervat
!RESTART, FREQUENCY=-nop. - FrontISTR leest bij het starten het herstartbestand en schrijft daarna elke
nstappen een nieuwe toestand.
Zie de uitvoeringsgids voor naamgeving, plaatsing en specificatie van herstartbestanden bij uitvoering. Er is ook gedeeltelijke leescompatibiliteit met bestanden in oudere formaten, maar nieuwe analyses moeten het huidige formaat gebruiken.
Gerelateerde onderwerpen¶
- Seriële uitvoering — Basisprincipes van bestandsplaatsing en uitvoercontrole tijdens uitvoering van een analyse.
- !OUTPUT_RES, !OUTPUT_VIS — Specificatie van variabelen voor uitvoer naar resultaat- en visualisatiebestanden.
- !WRITE — Inschakelen van resultaat-, visualisatie- en loguitvoer en specificeren van de uitvoerfrequentie (
RESULT/VISUAL/LOG/FEMAP-parameters). - !VISUAL — Specificatie van visualisatieoppervlakken en uitvoerformaten (inclusief een voorbeeld van een minimale gegevensset).
- !RESTART — Specificatie voor het lezen en schrijven van herstartbestanden.
- Analysetypen — Belangrijkste resultaatitems voor elk analysetype.
- Contact en inbedding — Betekenis van contactuitvoer en verwerking van contacttoestanden.
- Stapregeling — Relatie met uitvoerstappen en tijdpunten.