Domænedekomponering¶
Ved parallel analyse af et stort net med flere processer skal nettet i ét domæne opdeles i deldomæner, og oplysninger om det område, som hver proces håndterer, samt om den nødvendige kommunikation mellem områderne, skal genereres på forhånd. Denne forbehandling kaldes domænedekomponering.
I FrontISTR-parallelberegning opdeler hecmw_part1 nettet i ét domæne i deldomæner og opretter distribuerede netdata. De genererede distribuerede netdata læses af den parallelle fistr1 og anvendes af den parallelle solver sammen med oplysningerne til kommunikation mellem domæner.
Denne side beskriver de dekomponeringstyper og -metoder, overlapdybden og håndteringen af kontaktpunkter, der vælges ved domænedekomponering. Se de relaterede emner for udførelsesproceduren for hecmw_part1, det konkrete format for kontrolfilen og fejlmeddelelser.
Funktionsoversigt¶
Domænedekomponering opdeler et net i ét domæne i flere deldomæner. FrontISTR opretter distribuerede netdata ved at kombinere dekomponeringstype, dekomponeringsmetode, antal domæner og overlapdybde.
| Valgparameter | Vigtigste valg | Rolle |
|---|---|---|
| Dekomponeringstype | Knudebaseret, elementbaseret | Bestemmer, om tilhørsforholdet afgøres pr. knude eller element. |
| Dekomponeringsmetode | RCB, METIS (pMETIS / kMETIS) | Bestemmer, hvordan domænegrænserne dannes. |
| Antal domæner | Vilkårligt positivt heltal (for RCB \(2^n\)) | Bestemmer antallet af deldomæner i de distribuerede netdata. Sættes normalt lig med antallet af MPI-processer. |
| Overlapdybde | Heltal på 1 eller mere | Bestemmer omfanget, der lagres overlappende af nabodomæner. Angives ved knudebaseret dekomponering. |
| Kommunikationstabeller | Import-, eksport- og delingsoplysninger | Definerer den nødvendige dataudveksling mellem nabodeldomæner. Genereres automatisk ved domænedekomponering. |
Da kommunikationstabellerne indgår i de distribuerede netdata, behøver brugeren normalt ikke at redigere dem direkte. Den parallelle fistr1 læser de distribuerede netdata og løser de lineære ligninger med en parallel direkte metode som MUMPS eller en iterativ metode.
Valg af domænedekomponering¶
Ved almindelig strukturanalyse og varmeledningsanalyse bør knudebaseret dekomponering først overvejes. Den gør det let at håndtere kommunikation af knudeværdier, som kræves ved parallel endelig-element-analyse, og overlapdybden kan angives. Elementbaseret dekomponering er et alternativ til anvendelser som koblede analyser, hvor de distribuerede oplysninger skal behandles elementcentreret.
Dekomponeringsmetoden vælges ud fra geometrien og antallet af domæner. Ved en enkel geometri, hvor antallet af domæner kan være \(2^n\), er RCB et enkelt og robust valg. Ved komplekse geometrier eller et vilkårligt antal domæner er METIS, som bygger på grafpartitionering, et relevant valg.
| Problemkarakteristik | Anbefalet valg |
|---|---|
| Standard parallel strukturanalyse eller varmeledningsanalyse | Knudebaseret dekomponering |
| Anvendelser med elementcentrerede distribuerede data, f.eks. koblede analyser | Elementbaseret dekomponering |
| Enkel, omtrent kasseformet geometri med \(2^n\) domæner | RCB |
| Kompleks geometri eller vilkårligt antal domæner | METIS |
| Kontaktproblemer eller MPC-begrænsninger med SAINV-prækonditionering | Knudebaseret dekomponering med overlapdybde på 2 eller mere |
Antallet af domæner sættes normalt lig med antallet af MPI-processer. Se Analyse med parallel behandling for proceduren for parallel kørsel og angivelse af procesantal. Se også Solver og prækonditionering for sammenhængen mellem SAINV-prækonditionering og overlapdybde.
Dekomponeringstyper¶
Dekomponeringstypen bestemmer, hvilken enhed i nettet der tildeles ét entydigt deldomæne. Ved knudebaseret dekomponering bestemmes knudernes tilhørsforhold; ved elementbaseret dekomponering bestemmes elementernes. I begge tilfælde lagres oplysninger, der kræves til beregning med nabodeldomæner, som overlap.
Knudebaseret dekomponering¶
Ved knudebaseret dekomponering tildeles hver knude ét entydigt deldomæne. Elementer lagres overlappende i nabodeldomæner. I input angives dette med !PARTITION, TYPE=NODE-BASED.

Hvert deldomæne indeholder indre knuder, elementer der indeholder de indre knuder, samt knuderne der udgør disse elementer.

Kommunikationstabellen for knudebaseret dekomponering indeholder følgende oplysninger.
- Importknuder: knuder, der anvendes i deldomænet, men tilhører et andet deldomæne.
- Eksportknuder: indre knuder, som er importknuder i andre deldomæner.
- Delte elementer: elementer, der deles med andre deldomæner.



Elementbaseret dekomponering¶
Ved elementbaseret dekomponering tildeles hvert element ét entydigt deldomæne. Knuder lagres overlappende i nabodeldomæner. I input angives dette med !PARTITION, TYPE=ELEMENT-BASED.

Hvert deldomæne indeholder indre elementer, knuderne der udgør de indre elementer, samt elementer der indeholder disse knuder.

Kommunikationstabellen for elementbaseret dekomponering indeholder følgende oplysninger.
- Importelementer: elementer, der anvendes i deldomænet, men tilhører et andet deldomæne.
- Eksportelementer: indre elementer, som er importelementer i andre deldomæner.
- Delte knuder: knuder, der deles med andre deldomæner.



For begge dekomponeringstyper genererer hecmw_part1 automatisk kommunikationstabellerne og skriver dem til de distribuerede netdata. Brugeren behøver derfor normalt ikke selv at oprette import- og eksportoplysninger.
Dekomponeringsmetoder¶
Dekomponeringsmetoden beskriver, hvordan grænserne mellem deldomæner bestemmes. FrontISTR understøtter RCB baseret på koordinatværdier og METIS baseret på grafpartitionering.
| Dekomponeringsmetode | Egenskaber | Vigtigste begrænsninger/bemærkninger |
|---|---|---|
| RCB | Rekursiv todeling baseret på koordinatværdier. Hurtig for enkle geometrier. | Antallet af domæner er begrænset til \(2^n\). Dekomponeringsakser skal angives. |
| pMETIS | Grafpartitionering, der tager forbindelser mellem domæner i betragtning. | Tilgængelig i bygninger med METIS aktiveret. |
| kMETIS | Grafpartitionering i flere domæner; egnet til at danne domænegrænser i komplekse geometrier. | Tilgængelig i bygninger med METIS aktiveret. |
RCB står for Recursive Coordinate Bisection og gentager todeling af nettet langs koordinatakser. Metoden er velegnet, når antallet af domæner kan være \(2^n\), og er let at anvende på enkle, omtrent kasseformede geometrier.
METIS behandler nettets forbindelser som en graf og opretter deldomæner ved grafpartitionering. Det er et relevant valg ved komplekse geometrier eller når antallet af domæner ikke skal begrænses til \(2^n\). For at bruge METIS skal METIS-biblioteket være aktiveret ved bygning. Se Obligatoriske og valgfrie afhængigheder for håndtering af afhængige biblioteker.
Overlapdybde¶
Overlapdybden er antallet af lag i det område, som nabodeldomæner lagrer overlappende. Ved knudebaseret dekomponering kan parameteren DEPTH i !PARTITION angives som et heltal på 1 eller mere. Standardværdien er 1.
Ved almindelig parallel analyse er DEPTH=1 tilstrækkeligt. Når SAI-prækonditionering som SAINV anvendes til kontaktproblemer eller MPC-begrænsninger, kan en overlapdybde på 2 eller mere forbedre prækonditioneringens kvalitet.
Ved MPI-parallel anvendelse af formuleringen med selektiv kant-/knudeudglatning (FORM341=SELECTIVE_ESNS) for det lineære tetraederelement 341 skal overlapdybden også være 2 eller mere. Kant- og knudebaseret udglatning gennemsnitter størrelser fra elementer, der støder op til målelementet, så samling af stivheden i et deldomæne kræver oplysninger om elementer "to naboer væk"; standarden DEPTH=1 giver derfor utilstrækkelig udglatning nær domænegrænser. Se Elementbibliotek for detaljer om elementformuleringen.
En større overlapdybde øger antallet af knuder og elementer, som nabodeldomæner lagrer, og dermed også hukommelsesforbrug og kommunikation. Indstil værdien ved at afveje forbedret konvergens mod øgede beregningsomkostninger. Se Solver og prækonditionering for valg af prækonditionering.
Håndtering af kontaktpunkter¶
Ved dekomponering af et net med kontaktpar kan parameteren CONTACT i !PARTITION angive strategien for placering af kontaktpunkter i domæner. Placeringen påvirker stabiliteten og kommunikationsmængden i parallel analyse med kontaktsøgning og kontaktbegrænsninger.
| Værdi | Betydning |
|---|---|
DEFAULT | Brug standardstrategien for placering. |
SIMPLE | Brug en placering tæt på almindelig dekomponering uden særlig vægtning af kontaktpunkter. |
AGGREGATE | Dekomponer med tendens til at samle knudegrupper, der indgår i kontaktpar. |
DISTRIBUTE | Dekomponer, så masterknuderne i kontakten fordeles mere jævnt mellem deldomæner. |
For net uden kontakt er det ikke nødvendigt at tage hensyn til parameteren CONTACT. Hvis der opstår problemer med konvergens eller belastningsfordeling i parallel analyse med kontakt, bør strategien for kontaktpunktplacering revurderes. Se !PARTITION for detaljer om inputformatet.
Uafhængigt heraf kan parameteren CONTACT_OWNER vælge ejerskabsmetode for parallel kontakt. CONTACT angiver "hvordan der opdeles", mens CONTACT_OWNER angiver "hvilken side der er ansvarlig efter opdelingen".
| Værdi | Betydning |
|---|---|
MASTER | Master-ejerskab (standard). Masterfladen opdeles efter elementernes ejerdomæner, og slaveknuder kopieres til hvert masterejende domæne. |
SLAVE | Slave-ejerskab. Hver slaveknude beholdes kun i dens ejerdomæne, og hele masterfladen placeres i dette domæne. |
Når en slaveknude ved endelig glidning (INTERACTION=FSLID i !CONTACT) krydser en domænegrænse på masterfladen, kan nabosøgningen med MASTER afbrydes ved grænsen, så kontakttilstand og friktionshistorik mistes, og løsningen bliver afhængig af antallet af domæner. SLAVE undgår dette. Det kan kun angives med TYPE=NODE-BASED, og hukommelsesforbruget øges i det domæne, der ejer slaven.
Output af domænedekomponeringsbillede¶
Når parameteren UCD i !PARTITION angives, kan der skrives en UCD-fil til kontrol af dekomponeringsresultatet. UCD-filen bruges til at kontrollere domænenumre og dekomponeringsgrænser i visualiseringsværktøjer som MicroAVS.
Efter ændring af antal domæner, dekomponeringsmetode eller overlapdybde er det vigtigt at kontrollere, om de opdelte domæner er ubalancerede eller unaturligt fragmenterede. UCD-output er en hjælpefunktion til at kontrollere dekomponeringens rimelighed før den parallelle analyse køres.
Relaterede emner¶
- Analyse med parallel behandling — Udførelsesprocedure for
hecmw_part1, inputfiler og kontrol af output af distribuerede netdata. - Solver og prækonditionering — Parallel solver, prækonditionering og sammenhængen mellem SAINV og overlapdybde.
- Liste over fejlmeddelelser — Typiske fejlmeddelelser fra
hecmw_part1ogfistr1. - Parallel endelig-element-metode — Teoretisk baggrund for domænedekomponering og parallel endelig-element-metode.
- !PARTITION — Inputformat for kontroldata til domænedekomponeringsværktøjet.