- Lihtsa talaga tõmbekatse.
- Talal on viis paralleelset kiudu, tõmbekatse.
- Arvutada samad asjad peenema ja jämedama võrguga.
- Lisada päris materjalide omadused paralleelsete kiudude mudelis.
- Paralleelsete kiududega teha tõmbekatsed nii piki kui risti suunas ja võrrelda tegureid.
- Arvutada nihkeelastsusmoodulid.
- Esitlus
Kui aega on
- Automaatselt Youngi mooduli ja Poissoni teguri arvutamine, s.t mingi skript, mis
.vtufailist otse arvutab need.
Olulised failid on kõik kasutas radiator/buoyantPimpleFoam. nostl kaustad on ainult case üles seadmiseks ja need kasutavad ainult blockMesh'i ehk väga primitiivne geomeetria. withstl kaust sisaldab juba radiaatori stl faili.
Arvutuste jooksutamiseks veendu, et oled õiges case kasutas (nostl, withstl) ja seejärel
sbatch mesh.slurm
sbatch solve.slurmKuna võrgu tegemine võtab üpris kaua aega, siis lõin arvutamise ja võrgutamise kaheks osaks. Kui arvutamine on jõudnud poole peale ja siis klaster ajalimiidi tõttu ära tapab, siis on soovituslik järgmiseks jooksuks välja kommenteerida solve.slurm failis rida decomposePar -force. Arvutamine jätkub sealt kust pooleli jäi.
Kui tegu on nostl kaustaga, siis piisab ühest käsust sbatch job.slurm.
Minimaalne osa
- Blockmeshiga taustavõrk (
blockMeshDict) - LaplacianFoam simualtion diffusioonist, töötab
- Üle vaadata, kuidas konstantse soojusvõimsuse ääretingumust kasutada
- BouyantSimpleFoam simulatioon konvektsioonist.
- buoyantPimpleFoam suure kasti ääretingimused peavad olema nagu vaba õhk.
- Radikas sisse lisada, (stl exists). SnappyHexMesh'iga uus võrk genereerida.
- Paraviewst ilusad pildid + radika temp
- Radika keskmine temperatuur ajast (koos standardhälbega)
- Streamlinedest ilus pilt viimase aja jaoks, nii, et kogu domeen on FeatureEdges asendis ja värvid kuidagi, et saab midagi aru ka. Selleks kasuta filtreid Stream Tracer ja Glyph.
- Eelmisest kiire video.
- Streamlinede pilt ka aja 0.1 jaoks, seal on mingi huvitav olukord, mida võiks klassis arutada.
- Võrgust pildid. Läbilõige xy-tasandil, nii et radikas oleks näha ja sama xz-tasandi jaoks. Selleks on Slice filter.
Võiks teha:
- Radika sisepinnale const soojusvõimsus
- Sim ümber teha, et kasutaks chtMultiRegionSimpleFoam (solver kasutad laplacianfoam radika jaoks, bouyant simple foami ümritseva õhu jaoks)
Teise projekti paraleelseks tegemine tähendab, et tõstame #SBATCH --ntasks arvu ja ideaalis võiks simulatsioon kiiremini laheneda.
Selleks teeme loogika, mis muudab vajalikke parameetreid, jooksutab simulatsioone ja mõõdab kulunud aega.
- Teha fail, mis valmistab ette õiged parameetrid simulatsiooniks (
intern.slurm)-
ntasks=Nväärtust slurm failis - decomposeParDict
numberOfSubdomains N;ja coeffsn (3 3 2);- teha loop, mis võtab
Nja jagabnmuutujale laiali(N/3 N/3 N/3 + jääk)(või midagi)
- teha loop, mis võtab
-
- Teha loogika, mis logib
Njasrun buoyantPimpleFoam -parallelaega (intern.slurm) - Mõelda välja kuidas jooksutada runne (
manager.slurm)- Kas teha kuidagi hoopis uus
withstl=parallelkaust iga erinevaNjooksu jaoks - Kas teha järjest neid jookse (lihtsam)
- Kas teha kuidagi hoopis uus
- Navigeeri kausta
radiator/buoyantPimpleFoam. - Kasuta skripti, et teha arvutuse jaoks uus kaust
bash parallel-dir.sh n, kunon tuumade arv. - Navigeeri kausta
withstl-parallel-n. - Kasuta skripti, et automaatselt muuta domeeni dekompositsiooni ja sisse anda klastri töö
bash parallel-test.sh n.
NB! Enne seda loetelu peab olema loomulikult ka võrk genereeritud põhikaustas, mille järgi paralleelse arvutuse jaoks kaustu tehakse. See tähendab, et kui varasemast võrku ei ole, tuleb teha põhikaustas sbatch mesh.slurm.