# NLMech
[![CircleCI](https://circleci.com/gh/nonlocalmodels/NLMech.svg?style=shield)](https://circleci.com/gh/nonlocalmodels/nonlocalheatequation) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/118379d7d745464584b73e9e06f60462)](https://www.codacy.com/gh/nonlocalmodels/NLMech?utm_source=github.com&utm_medium=referral&utm_content=nonlocalmodels/NLMech&utm_campaign=Badge_Grade) [![Coverage Status](https://coveralls.io/repos/github/nonlocalmodels/NLMech/badge.svg?branch=master)](https://coveralls.io/github/nonlocalmodels/NLMech?branch=master)
Welcome to NLMech repository. In this project we implement
nonlocal fracture theory, referred to as Peridynamics,
using both finite element and finite difference discretization.
Logo below has been obtained by running Peridynamic simulation on the logo mesh, [see](https://nonlocalmodels.github.io/examples/fd-logo-soft-material.html).
<p style="text-align:center;"><img src="https://github.com/nonlocalmodels/NLMech/blob/master/assets/logo/logo_sim.png?raw=true" alt="logo" width="400"/></p>
## Building
The code uses
* [CMake](https://cmake.org/) 3.10
as the build system and has following dependencies:
* [HPX](https://github.com/STEllAR-GROUP/hpx) 1.5.1
* [Blaze](https://bitbucket.org/blaze-lib/blaze/src/master/) 3.8,
* [Blaze_Iterative](https://github.com/STEllAR-GROUP/BlazeIterative) master,
* [Boost](https://www.boost.org/) 1.73,
* [gmsh](https://gmsh.info/) 4.6,
* [VTK](https://www.vtk.org) 9.0, and
* [YAML-CPP](https://github.com/jbeder/yaml-cpp) 0.6.3.
Following dependencies are optional, but are recommend for large simualtions:
* [PCL](https://github.com/PointCloudLibrary/pcl) 1.11.
Note that the above provided versions are the minimal rquired versions and we recommend to use these to build the code.
We provide following support to build the code
* Bash scripts to build the code on [Ubuntu](https://github.com/nonlocalmodels/buildscripts/tree/master/Ubuntu) and [Fedora](https://github.com/nonlocalmodels/buildscripts/tree/master/Fedora),
* Docker files to build the code using the [Fedora packages](https://github.com/nonlocalmodels/buildscripts/blob/master/Docker/Fedora) or [build all dependencies](https://github.com/nonlocalmodels/buildscripts/blob/master/Docker/FedoraAll),
* [Scripts](https://github.com/nonlocalmodels/HPCBuildInfrastructure) to build the code on HPC systems.
If you just interested the code, we provide a Doker image with the [latest sucessful build](https://github.com/nonlocalmodels/NLMech/packages/384758) of the master branch. For writing your own
[YAML](https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html) files, we provide a bunch of [examples](https://nonlocalmodels.github.io/examples/).
If you encounter any bug or want to submit a feature request, please generate an [issue](https://github.com/nonlocalmodels/NLMech/issues) on GitHub.
Right now, we have [![GitHub issues](https://img.shields.io/github/issues/nonlocalmodels/nlmech.svg)](https://github.com/nonlocalmodels/NLMech/issues). For contributing, we refer to the Contributing section below.
## Documentation
The documentation of the the master branch is available [here](https://nonlocalmodels.github.io/documentation/).
## Releases
The current stable version is [![GitHub release](https://img.shields.io/github/release/nonlocalmodels/NLMech.svg)](https://GitHub.com/nonlocalmodels/NLMech/releases/) and the current developement happens in the [master branch](https://github.com/nonlocalmodels/NLMech). For more details, we refer to the [Changelog](https://github.com/nonlocalmodels/NLMech/blob/master/CHANGELOG.md) file.
## Code of conduct
We have adopted a [code of conduct](https://github.com/nonlocalmodels/NLMech/blob/master/CODE_OF_CONDUCT.md) for this project. Please refer to this document if you would like to know more about the expectations for members of our community, with regard to how they will behave toward each other.
## Contributing
The source code is released under the [![GitHub license](https://img.shields.io/github/license/nonlocalmodels/nonlocalmodels.github.io.svg)](https://github.com/nonlocalmodels/nonlocalmodels.github.io/blob/master/LICENSE) license. If you like to contribute, we only accept your pull request using the same license. Please feel free to add your name to license header of the files you added or contributed to. If possible please add a test for your new feature using [CTest](https://gitlab.kitware.com/cmake/community/-/wikis/doc/ctest/Testing-With-CTest). We adapted the Google C++ [Style Guide](https://google.github.io/styleguide/cppguide.html) for this project. We use the [clang-format](https://clang.llvm.org/docs/ClangFormat.html) tool to format the soruce code with respect to this style guide. Please run the `format.sh' script before your do your pull request.
## Citing
In publications, please use our paper as the main citation for NLMech:
* P. Diehl, P. K. Jha, H. Kaiser, R. Lipton, and M. Lévesque. An asynchronous and task-based implementation of peridynamics utilizing hpx—the C++ standard library for parallelism and concurrency. SN Applied Sciences, 2(12):2144, 2020, [10.1007/s42452-020-03784-x](https://doi.org/10.1007/s42452-020-03784-x), [Preprint](https://arxiv.org/abs/1806.06917).
For more references, we refer to NLMech's [publication list](https://nonlocalmodels.github.io/publications/).
## Acknowledgements
NLMech has been funded by:
* Army Research Office Grant # W911NF-16-1-0456 to PI Dr. Robert Lipton (Professor at Louisiana State University). This grant supported Prashant K. Jha on a postdoctoral position from October 2016 - July 2019.
* Canada Research Chairs Program under the Canada Research Chair in Multiscale Modelling of Advanced Aerospace Materials held by M. Lévesque; Natural Sciences and Engineering Research Council of Canada (NSERC) Discovery Grants Program under Discovery Grant RGPIN-2016-06412.
* We are grateful for the support of the [Google Summer of Code program](https://summerofcode.withgoogle.com/) funding internships.
没有合适的资源?快使用搜索试试~ 我知道了~
NLMech:非局部模型的有限元实现和有限差分近似
共240个文件
h:74个
cpp:56个
yaml:28个
5星 · 超过95%的资源 需积分: 15 2 下载量 65 浏览量
2021-02-13
05:27:49
上传
评论
收藏 2.05MB ZIP 举报
温馨提示
NLMech 欢迎使用NLMech信息库。 在这个项目中,我们使用有限元和有限差分离散化技术实现非局部断裂理论,称为围岩动力学。 通过在徽标网格上运行Peridynamic仿真可获得以下徽标,。 建筑 该代码使用 3.10 作为构建系统,并具有以下依赖性: 1.5.1 3.8 master, 1.73, 4.6, 9.0,以及 0.6.3。 以下依赖关系是可选的,但建议用于大型仿真: 1.11。 请注意,以上提供的版本是必需的最低版本,我们建议使用这些版本来构建代码。 我们提供以下支持来构建代码 使用Bash脚本在和上构建代码, Docker文件以使用代码或, 用于在HPC系统上构建代码的。 如果您只是对代码感兴趣,我们将为Doker图像提供master分支的。 为了编写自己的文件,我们提供了许多。 如果您遇到任何错误或想要提交功能请求,请在G
资源详情
资源评论
资源推荐
收起资源包目录
NLMech:非局部模型的有限元实现和有限差分近似 (240个子文件)
FindBlazeIterative.cmake 803B
FindYamlCpp.cmake 790B
FindGmsh.cmake 725B
compute.cpp 104KB
fDModel.cpp 34KB
input.cpp 29KB
fe.cpp 26KB
testFeLib.cpp 24KB
vtkReader.cpp 21KB
fe2D.cpp 19KB
QuasiStaticModel.cpp 19KB
fd.cpp 16KB
ElasticState.cpp 16KB
mesh.cpp 13KB
triElem.cpp 13KB
tetElem.cpp 12KB
utilGeom.cpp 12KB
rnpBond.cpp 12KB
reader.cpp 12KB
fdSimple.cpp 11KB
quadElem.cpp 11KB
fLoading.cpp 11KB
uLoading.cpp 10KB
lineElem.cpp 9KB
vtkWriter.cpp 9KB
mshReader.cpp 9KB
interiorFlags.cpp 8KB
writer.cpp 8KB
mshWriter.cpp 8KB
legacyVtkWriter.cpp 7KB
util.cpp 7KB
DataManager.cpp 7KB
dampingGeom.cpp 6KB
fracture.cpp 6KB
utilFunction.cpp 4KB
neighbor.cpp 4KB
transformation.cpp 4KB
fe1D.cpp 4KB
initialCondition.cpp 4KB
uscale.cpp 3KB
matrix.cpp 3KB
stateBasedHelperFunctions.cpp 3KB
main.cpp 3KB
testGeomLib.cpp 3KB
policy.cpp 3KB
volumeCorrection.cpp 3KB
fastMethods.cpp 3KB
baseElem.cpp 2KB
massMatrix.cpp 2KB
dc.cpp 2KB
utilIO.cpp 2KB
mesh.cpp 2KB
pp.cpp 2KB
main.cpp 1KB
testFe.cpp 1KB
compare.cpp 1KB
util.cpp 993B
testGeom.cpp 588B
model.cpp 520B
quadMesh_nodes.csv 3KB
quadMesh_elements.csv 2KB
triMesh_nodes.csv 617B
testFracture_nodes.csv 617B
triMesh_elements.csv 585B
triMesh_nodes_simpler_mesh.csv 125B
triMesh_elements_simpler_mesh.csv 63B
Dockerfile 480B
logo.geo 2KB
logo.geo 2KB
.gitignore 620B
csv.h 55KB
compute.h 28KB
tetElem.h 16KB
mesh.h 15KB
triElem.h 14KB
matrix.h 13KB
DataManager.h 12KB
reader.h 12KB
influenceFn.h 12KB
point.h 12KB
materialDeck.h 10KB
util.h 10KB
testFeLib.h 10KB
input.h 10KB
baseElem.h 9KB
lineElem.h 9KB
interiorFlags.h 8KB
fractureDeck.h 8KB
quadElem.h 8KB
rnpBond.h 8KB
fDModel.h 7KB
vtkReader.h 7KB
writer.h 7KB
ElasticState.h 6KB
legacyVtkWriter.h 6KB
loadingDeck.h 6KB
vtkWriter.h 6KB
utilFunction.h 5KB
mshWriter.h 5KB
utilGeom.h 5KB
共 240 条
- 1
- 2
- 3
余木脑袋
- 粉丝: 28
- 资源: 4596
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1