Skip to content

youhq34/meshfree_quadrature_nonlocal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Meshfree quadrature rule

This repository contains the code for the paper

There are five test problems: static nonlocal diffusion(converge to nonlocal limit), static nonlocal diffusion(converge to local limit), dynamic nonlocal diffusion, static bond-based peridynamics, and Kalthoff-Winkler experiment. The first four problems focus on heterogeneous materials. For KW experiment we're interested in homogeneous case. All the problems are in two-dimensional physical space.

Requirements

  • gcc 7.5.0 or newer
  • Install BLAS and LAPACK packages, you may need to change Makefile to direct to BLAS and LAPACK libraries.

Files

  • nonlocaldiff_static.cpp is the code for the static nonlocal diffusion problem with Dirichlet boundary condition.
  • nonlocaldiff.cpp is the code for the dynamic nonlocal diffusion problem with Dirichlet boundary condition and backward Euler scheme.
  • PMB_2Dweight.cpp is the code for the static bond-based peridynamics with Dirichlet boundary condition.
  • KW_2Dweight_dynamic.cpp is the code for the Kalthoff-Winkler experiment simulation.

Quick start

static nonlocal diffusion problems (converging to local limit)

compile the run code with the following command:

  1. make Nldiff
  2. ./nldiff.ex <number of particles><ratio of delta/h><poly_order><case>

Example:

./nldiff.ex 20 3.5 3 1

dynamic nonlocal diffusion problems

compile the run code with the following command:

  1. make Nldiffd
  2. ./nldiffd.ex <number of particles><ratio of delta/h><poly_order><dt><timestep>

Example:

./nldiffd.ex 20 3.5 3 0.01 10

static bond-based peridynamics

compile the run code with the following command:

  1. make PD
  2. ./PMB_2d.ex <number of particles><ratio of delta/h><poly_order><random perturbation coefficient>

Example:

./PMB_2d.ex 20 3.5 3 0.0

Kalthoff-Winkler experiment

compile the run code with the following command:

  1. make KW
  2. ./KW.ex <number of particles><ratio of delta/h><poly_order><dt><timestep>

Example:

./KW.ex 32 3.0 3 2e-4 1000

Citations

If you find this code or method useful for your project, please cite

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •