Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

https://github.com/hpc-maths/GenEO
21 May 2024, 17:50:58 UTC
  • Code
  • Branches (7)
  • Releases (0)
  • Visits
    • Branches
    • Releases
    • HEAD
    • refs/github-services/pull/1/head
    • refs/github-services/pull/2/head
    • refs/github-services/pull/3/head
    • refs/heads/PCAWG
    • refs/heads/elasticity-x
    • refs/heads/master
    • refs/heads/matis
    No releases to show
  • b13ca60
  • /
  • readme.md
Raw File Download Save again
Take a new snapshot of a software origin

If the archived software origin currently browsed is not synchronized with its upstream version (for instance when new commits have been issued), you can explicitly request Software Heritage to take a new snapshot of it.

Use the form below to proceed. Once a request has been submitted and accepted, it will be processed as soon as possible. You can then check its processing state by visiting this dedicated page.
swh spinner

Processing "take a new snapshot" request ...

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
  • revision
  • snapshot
origin badgecontent badge
swh:1:cnt:e450cdb02543546bf223592493cb8b520546b298
origin badgedirectory badge
swh:1:dir:b13ca60f3a6fd491425cfc8d5bec660ef1dfce14
origin badgerevision badge
swh:1:rev:47b05ef7165f6cee92daa3002503259f0ec84695
origin badgesnapshot badge
swh:1:snp:5600c58bc442523ff2d2f69616f3f4483ec0d504

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • content
  • directory
  • revision
  • snapshot
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Tip revision: 47b05ef7165f6cee92daa3002503259f0ec84695 authored by gouarin on 28 May 2018, 11:31:32 UTC
fix binder
Tip revision: 47b05ef
readme.md
This project solve the linear elasticity problem using PETSc in 2d and 3d for lamé coefficients which are constant or constant by cell on a cartesian grid.

# Installation

To install this package, you need first an installation of anaconda. If you don't have anaconda on your system, you can download miniconda for Python 3 (https://conda.io/miniconda.html).

Next, we will create an environment with all the needed packages using the following command.

    conda env create -f environment.yml

To activate your environment

    source activate petsc-elasticity

The final step is to install `petsc4py`. To do that, you have to specify the environment variable `PETSC_DIR`.

Run the following command in your terminal
    conda env list

    # conda environments:
    #
    ...
    petsc-elasticity      *  /home/loic/miniconda3/envs/petsc-elasticity
    ...

The path after the conda environment name `petsc-elasticity` is the path of `PETSC_DIR`.

    export PETSC_DIR=/home/loic/miniconda3/envs/petsc-elasticity

You can know install `petsc4py`

    pip install petsc4py

To install this project, you have to clone it

    git clone https://gitlab.centralesupelec.fr/gouarin/elasticity.git

Then

    cd elasticity
    python setup.py install

It's important to be in the conda environment created previously. If it is not the case

    source activate petsc-elasticity

# Execute demo file

In the directory of this project you have a `demos` directory with 2d and 3d examples.

This is an example of how to test one of them

    python elasticity_2d.py -ksp_monitor -pc_type gamg

- `ksp_monitor` indicates to PETSc to print the residual at each step.
- `pc_type gamg` indicates to PETSc to use an algebric multigrid as a preconditioner.

And in parallel

    mpiexec -n 4 python elasticity_2d.py -ksp_monitor -pc_type gamg

# Visualize the results

If the execution of `elasticity_2d.py` succeeded, you should have a file name `solution_2d.vts`. 

To visualize this file, you have to install paraview (https://www.paraview.org/download/).

- Start `paraview` and select file->load state. 
- Then select the file in the directory `paraview` of this project called `visu_2d.pvsm`.
- Then select the `vts` file.

You should see the results.

back to top

Software Heritage — Copyright (C) 2015–2026, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Content policy— Contact— JavaScript license information— Web API