Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
3 of 41 committers (7.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.9%) to scientific vocabulary
Repository
Finite Element Analysis Library in Python
Basic Info
Statistics
- Stars: 375
- Watchers: 11
- Forks: 169
- Open Issues: 26
- Releases: 19
Metadata Files
README.md
FEALPy:Finite Element Analysis Library in Python

While beginning with the finite element algorithm, FEALPy's sights are set on exploring vast horizons.
We hope FEALPy will be an open-source library for intelligent CAX algorithms, integrating CAX fundamentals with AI to support advanced algorithm research and the cultivation of versatile talent.
We also hope FEALPy can accelerate the creation and testing of next-gen intelligent CAX apps, paving the way for advanced algorithms in industrial applications.
So FEALPy's development goal is to become the next generation intelligent CAX computing engine.
The word "FEAL" is an archaic or poetic term in English, meaning faithful or loyal. Though not commonly used in modern English, it carries strong connotations of unwavering dedication and reliability.
The name "FEALPy" embodies this essence of loyalty and faithfulness. It signifies the software's commitment to being a dependable and trustworthy tool in the field of intelligent CAX computation. Just as "FEAL" suggests steadfastness, FEALPy aims to provide consistent, reliable support for researchers, engineers, and developers in their pursuit of innovative solutions and advancements in CAX computation. The name reflects the software's mission to be a loyal companion in the journey toward groundbreaking discoveries and industrial applications.
Installation
Miniconda
bash
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh
~/miniconda3/bin/conda init bash
```bash conda create -n gpufealpy310 python=3.10 conda activate gpufealpy310 conda install numpy=2.0.1 -c conda-forge #2.0.1 conda install ipython notebook -c conda-forge conda install jaxlib==cuda* jax cuda-nvcc -c conda-forge -c nvidia # 0.4.31 conda install cupy -c conda-forge -c nvidia conda install pytorch=2.3.1 -c conda-forge -c nvidia
```
From Source (Recommanded)
First, clone the FEALPy repository from GitHub
bash
git clone https://github.com/weihuayi/fealpy.git
If you can't access GitHub, you can clone it from Gitee
bash
git clone https://gitee.com/whymath/fealpy
It is recommended to create a virtual environment to manage dependencies:
bash
python -m venv fealpy_env
source fealpy_env/bin/activate # On Windows, use `fealpy_env\Scripts\activate`
Then change directory to the cloned repository and install FEALPy in editable(-e) mode:
bash
cd fealpy
pip install -e .
If you want to install optional dependencies, such as pypardiso, pyamg,
meshpy and so on, you can do so by specifying the [optional] extra:
pip install -e ".[optional]"
To install both development and optional dependencies, use:
bash
pip install -e ".[dev,optional]"
To verify that FEALPy is installed correctly, you can run the following command:
bash
python -c "import fealpy; print(fealpy.__version__)"
To update your FEALPy installation to the latest version from the source repository, navigate to the FEALPy directory and pull the latest changes:
bash
cd fealpy
git pull origin main
To uninstall FEALPy, just run the following command:
bash
pip uninstall fealpy
Development
For FEALPy developers, the first step is to create a fork of the https://github.com/weihuayi/fealpy repository in your own Github account.
Clone the FEALPy repository under your own account to the local repository: ```bash
replacewith your own GitHub username
git clone git@github.com:
Note that the following operations need to be operated in the fealpy folder.
Set up the upstream repository:
bash
git remote add upstream git@github.com:weihuayi/fealpy.git
Before local development, need to pull the latest version from the upstream repository and merge it into the local repository:
bash
git fetch upstream
git merge upstream/master
After local development, push the modifications to your own remote repository:
bash
git add modified_files_name
git commit -m "Explanation on modifications"
git push
Finally, in your own Github remote repository, open a pull request to the upstream repository and wait for the modifications to be merged.
Warning
The sparse pattern of the matrix A generated by FEALPy may not be the same as the theoretical pattern, since there exists nonzero values that are close to machine precision due to rounding. If you care about the sparse pattern of the matrix, you can use the following commands to eliminate them
python
eps = 10**(-15)
A.data[ np.abs(A.data) < eps ] = 0
A.eliminate_zeros()
Docker
To be added.
Reference and Acknowledgement
We thank Dr. Long Chen for the guidance and compiling a systematic documentation for programming finite element methods. * http://www.math.uci.edu/~chenlong/programming.html * https://github.com/lyc102/ifem
Citation
Please cite fealpy if you use it in your paper
H. Wei and Y. Huang, FEALPy: Finite Element Analysis Library in Python, https://github.com/weihuayi/fealpy, Xiangtan University, 2017-2024.
bibtex
@misc{fealpy,
title = {FEALPy: Finite Element Analysis Library in Python. https://github.com/weihuayi/fealpy},
url = {https://github.com/weihuayi/fealpy},
author = {Wei, Huayi and Huang, Yunqing},
institution = {Xiangtan University},
year = {Xiangtan University, 2017-2024},
}
Owner
- Name: Huayi Wei
- Login: weihuayi
- Kind: user
- Company: Xiangtan University
- Repositories: 61
- Profile: https://github.com/weihuayi
I work in scientific computing and I like coding.
Citation (citation.bib)
@misc{fealpy,
title = {FEALPy: Finite Element Analysis Library in Python. https://github.com/weihuayi/
fealpy},
url = {https://github.com/weihuayi/fealpy},
author = {Wei, Huayi and Huang, Yunqing},
institution = {Xiangtan University},
year = {Xiangtan University, 2017-2022},
}
Huayi Wei, and Yunqing Huang. FEALPy: Finite Element Analysis Library in Python. https://github.com/weihuayi/fealpy, Xiangtan University, 2017-2023.
Committers
Last synced: almost 3 years ago
All Time
- Total Commits: 2,742
- Total Committers: 41
- Avg Commits per committer: 66.878
- Development Distribution Score (DDS): 0.3
Top Committers
| Name | Commits | |
|---|---|---|
| Huayi Wei | w****i@x****n | 1,919 |
| liao0415 | 1****9@q****m | 89 |
| liujiangang0518 | 2****4@q****m | 85 |
| tiantian0347 | t****7@1****m | 79 |
| xuming0629 | 9****1@q****m | 70 |
| wangdong2 | 8****3@q****m | 64 |
| wpx | 1****7@q****m | 56 |
| wangxin | 5****8@q****m | 53 |
| Chunyu Chen | c****1@1****m | 46 |
| cbtxs | c****s@q****m | 35 |
| Liang yiru | 2****0@q****m | 30 |
| liao0415 | 1****3@1****m | 29 |
| chenchunyu | c****1@q****m | 28 |
| Huayi Wei | w****i@x****n | 27 |
| Chunyu Chen | c****1@1****m | 16 |
| wanglognjuan | 8****5@q****m | 13 |
| zweien | 2****3@q****m | 10 |
| AlbertZyy | z****1@f****m | 10 |
| dependabot[bot] | 4****]@u****m | 9 |
| heliang | b****8@g****m | 8 |
| gao | 1****2@q****m | 8 |
| wangliupeng | w****4@1****m | 8 |
| W. Wang | 7****i@u****m | 8 |
| Charliewei | 1****7@q****m | 7 |
| caohuihui | 1****5@q****m | 6 |
| S.Cao | s****h@g****m | 4 |
| zhf-0 | h****4@g****m | 3 |
| jk | k****g@x****n | 3 |
| wubangminlll | 1****6@q****m | 3 |
| zhaojiakuo | 5****9@q****m | 3 |
| and 11 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 109
- Total pull requests: 2,356
- Average time to close issues: over 1 year
- Average time to close pull requests: about 10 hours
- Total issue authors: 49
- Total pull request authors: 41
- Average comments per issue: 3.17
- Average comments per pull request: 0.02
- Merged pull requests: 2,041
- Bot issues: 1
- Bot pull requests: 17
Past Year
- Issues: 22
- Pull requests: 1,109
- Average time to close issues: 2 days
- Average time to close pull requests: about 14 hours
- Issue authors: 13
- Pull request authors: 34
- Average comments per issue: 0.5
- Average comments per pull request: 0.03
- Merged pull requests: 894
- Bot issues: 0
- Bot pull requests: 7
Top Authors
Issue Authors
- yoczhang (15)
- brighthe (12)
- xieweidc (10)
- jibingquanm (5)
- weihuayi (5)
- lalala753 (4)
- WPengXiang (4)
- cbtxs (3)
- Geniuswangwei (3)
- Smile-In-Heart (2)
- zhf-0 (2)
- MegrezLi (2)
- DoooWeee-byte (2)
- xiaoyanyan97 (2)
- DavidDeadpool (2)
Pull Request Authors
- brighthe (400)
- BellaLq (185)
- BenHBLiu (184)
- AlbertZyy (164)
- WPengXiang (153)
- cbtxs (139)
- ChaosTHL (135)
- concha-k-chen (134)
- pengmiaoying (106)
- tiantian0347 (97)
- Liujiawangmath (95)
- gaotingyi (85)
- july-liuzhi (72)
- wangdong19 (71)
- Wangwenbinmath (69)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 265 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 16
- Total maintainers: 1
pypi.org: fealpy
FEALPy: Finite Element Analysis Library in Python
- Homepage: http://github.com/weihuayi/fealpy
- Documentation: https://fealpy.readthedocs.io/
- License: GNU
-
Latest release: 3.3.2
published 8 months ago
Rankings
Maintainers (1)
Dependencies
- wearerequired/git-mirror-action v1 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- bump2version *
- codecov *
- matplotlib *
- numpy *
- pyevtk *
- pytest >=3.6
- pytest-cov *
- scipy *
- vtk *
- activesupport 6.1.4.1
- addressable 2.8.0
- colorator 1.1.0
- concurrent-ruby 1.1.9
- em-websocket 0.5.2
- eventmachine 1.2.7
- ffi 1.15.3
- forwardable-extended 2.6.0
- gemoji 3.0.1
- html-pipeline 2.14.0
- http_parser.rb 0.6.0
- i18n 1.8.10
- jekyll 4.2.0
- jekyll-feed 0.15.1
- jekyll-paginate 1.1.0
- jekyll-sass-converter 2.1.0
- jekyll-sitemap 1.4.0
- jekyll-text-theme 2.2.6
- jekyll-watch 2.2.1
- jemoji 0.12.0
- kramdown 2.3.1
- kramdown-parser-gfm 1.1.0
- liquid 4.0.3
- listen 3.7.0
- mercenary 0.4.0
- mini_portile2 2.8.0
- minitest 5.14.4
- nokogiri 1.13.10
- pathutil 0.16.2
- public_suffix 4.0.6
- racc 1.6.1
- rake 12.3.3
- rb-fsevent 0.11.0
- rb-inotify 0.10.1
- rexml 3.2.5
- rouge 3.26.0
- safe_yaml 1.0.5
- sassc 2.4.0
- terminal-table 2.0.0
- tzinfo 2.0.4
- unicode-display_width 1.7.0
- zeitwerk 2.4.2
- bundler >= 0 development
- rake ~> 12.3 development
- jekyll >= 3.6, < 5.0
- jekyll-feed ~> 0.1
- jekyll-paginate ~> 1.1
- jekyll-sitemap ~> 1.0
- jemoji ~> 0.8
- python 3.8-slim-buster build