Finite Element (and associated material) codes for academic research work. In the tags listing:
dgcgwave contains a customised FEniCS image to run a discontinuous in time, continuous in space, Galerkin finite element approximation to an equation in linear viscodynamics. (See Simon Shaw, An a priori error estimate for a temporally discontinuous Galerkin space–time finite element method for linear elasto- and visco-dynamics,
Computer Methods in Applied Mechanics and Engineering, Volume 351, 2019, Pages 1-19, ISSN 0045-7825, https://doi.org/10.1016/j.cma.2019.03.025 , http://www.sciencedirect.com/science/article/pii/S0045782519301549)Pull and run the container with
docker pull variationalform/fem:dgcgwave
docker run -ti variationalform/fem:dgcgwave
You only need to pull once and if you want to run straightaway then just use the second command - it will initiate the pull for you. Once the container is running, type either of
cd fenics
./bigrun.sh -J 5 | tee runmeout.txt
or
cd fenics
./bigrun_np.sh -J 5 | tee runmeout_np.txt
(the second uses mpi parallelism, whereas the first is for a single processor). This will reproduce (in the 'results' folder) the first few lines, up to Nxy = int(2^{5/2}), of the results given in the paper as Examples I, II, III, IV, as examples 5,10,11,12 of a suite of twelve test cases. Use -J N to go up to higher values of $N_{xy}$ for a positive integer $N$ (but it will take longer to run).
yjcg1 contains codes written for a paper with my student Yongseok Jang. The codes use FEniCS to solve dynamic linear viscoelasticity problems using two different internal variable formulations. More details will appear once the paper has been finalised and is available (also see arXiv:2001.04745v1 at https://arxiv.org/abs/2001.04745). For the moment the results in the paper can be reproduced withdocker pull variationalform/fem:yjcg1
docker run -ti variationalform/fem:yjcg1
cd ./2019-11-26-codes/mainTable/ ; ./main_Table.sh
yjcg2 contains codes written for a second paper with my student Yongseok Jang. The codes use FEniCS to solve dynamic linear viscoelasticity problems using a fractional calculus formulation. More details will appear once the paper has been finalised and is available (also see arXiv:2007.00420 at https://arxiv.org/abs/2007.00420). For the moment partial results in the paper can be reproduced withdocker pull variationalform/fem:yjcg2
docker run -ti variationalform/fem:yjcg2
cd; cd ./codes/Visco_Frac_CG-master; ./main.sh
This will only produce the coarse discretisation results. To get all of the results edit main.sh: comment out the current four run lines, and uncomment the others. Running ./main.sh will then produce all of the results in the paper but this may take several hours.
SIPG_PMMA_demo_2022 SIPG FEM simulation and comparison of linear elastic and linear viscoelastic response for PMMA used (circa 2022) as described below. This code and the docker image (see below) can be used to reproduce the data in the paper:A Priori Analysis of a Symmetric Interior Penalty Discontinuous Galerkin Finite Element Method for a Dynamic Linear Viscoelasticity Model
By Yongseok Jang and Simon Shaw
Submitted to: Computational Methods in Applied Mathematics
The DOI and full reference will appear here if it is accepted.
The following sequence of commands can be used to generate a suite of results for linear elasticity and viscoelasticity using the discrete time SIPG FEM as described in the paper referenced above. These results increase mesh and time-step precision with each set taking progressively longer to run.
# log in to server, cd to where the shared directories will be, for example
cd fenics_docker/shared
docker pull variationalform/fem:SIPG_PMMA_demo_2022
# you might need this to run screen
sudo chmod o+rw /dev/pts/0
screen -S pmma # at least three: one for le, one for ve and one to monitor progress
# in screen 2
newgrp docker # you may not need this
cd fenics_docker/shared
docker run -ti --name le_pmma -v "$PWD":/home/fenics/shared \
-w /home/fenics/local/runtime/le variationalform/fem:SIPG_PMMA_demo_2022
# in the container
./longrun_le.sh | tee ./longrun_le_out.txt
# docker rm (e.g.) 3e17 can be used for a fresh start with the container
# periodically, to get interim results, use CNTRL-Z...
cd .. && tar cvf le.tar le && mv le.tar /home/fenics/shared/ && cd le
# and then use fg to resume
# in screen 3
newgrp docker # you may not need this
cd fenics_docker/shared
docker run -ti --name ve_pmma -v "$PWD":/home/fenics/shared \
-w /home/fenics/local/runtime/ve variationalform/fem:SIPG_PMMA_demo_2022
# in the container
./longrun_ve.sh | tee ./longrun_ve_out.txt
# docker rm (e.g.) 3e17 can be used for a fresh start with the container
# periodically, to get interim results, use CNTRL-Z...
cd .. && tar cvf ve.tar ve && mv ve.tar /home/fenics/shared/ && cd ve
# and then use fg to resume
These runs could take up to ten days (or even longer) depending on your hardware.
The *.sh scripts can be edited to get shorter (but less accurate) runs.
Content type
Image
Digest
sha256:09c1202dd…
Size
790.7 MB
Last updated
about 4 years ago
docker pull variationalform/fem:SIPG_PMMA_demo_2022