Skip to content

Nonlinear shell dynamics analysis based on FEM shell element with Absolute Nodal Coordinate. Formulation (ANCF).

License

Notifications You must be signed in to change notification settings

KRproject-tech/MATLAB_ANCF_shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 

Repository files navigation

図1

MATLAB_ANCF_shell

Nonlinear plate dynamics analysis based on FEM shell element with Absolute Nodal Coordinate Formulation (ANCF) 1. (This code is validated with MATLAB R2007b or later versions)

License Matlab Windows

Communication

Twitter

Language

Directory

├─Plate_FEM_explicit_3_SURFplot
│  ├─cores
│  │  ├─functions
│  │  ├─solver
│  │  └─ToolBoxes
│  └─save
│      └─fig
└─Plate_FEM_implicit_0
    ├─cores
    │  ├─functions
    │  ├─solver
    │  └─ToolBoxes
    └─save
        └─fig
  • Plate_FEM_implicit_0 : Implicit solver (Faster and more robust under the thin thickness condition)

  • Plate_FEM_explicit_3_SURFplot : Explicit solver (Light computing cost)

Comparisons between Semi-implicit solver vs ODE113 (MATLAB explicit solver)

Publications

This code with the implicit solver (Plate_FEM_implicit_0) was employed as a structure solver for the following publication(s):

  • Influence of the aspect ratio of the sheet for an electric generator utilizing the rotation of a flapping sheet, Mechanical Engineering Journal, Vol. 8, No. 1 (2021).
    https://doi.org/10.1299/mej.20-00459
@article{Akio YAMANO202120-00459,
    title={Influence of the aspect ratio of the sheet for an electric generator utilizing the rotation of a flapping sheet},
    author={Akio YAMANO and Hiroshi IJIMA and Atsuhiko SHINTANI and Chihiro NAKAGAWA and Tomohiro ITO},
    journal={Mechanical Engineering Journal},
    volume={8},
    number={1},
    pages={20-00459-20-00459},
    year={2021},
    doi={10.1299/mej.20-00459}
}
  • Flow-induced vibration and energy-harvesting performance analysis for parallelized two flutter-mills considering span-wise plate deformation with geometrical nonlinearity and three-dimensional flow, International Journal of Structural Stability and Dynamics, Vol. 22, No. 14, (2022).
    https://doi.org/10.1142/S0219455422501632
@article{doi:10.1142/S0219455422501632,
    author = {Yamano, Akio and Chiba, Masakatsu},
    title = {Flow-Induced Vibration and Energy-Harvesting Performance Analysis for Parallelized Two Flutter-Mills Considering Span-Wise Plate Deformation with Geometrical Nonlinearity and Three-Dimensional Flow},
    journal = {International Journal of Structural Stability and Dynamics},
    volume = {22},
    number = {14},
    pages = {2250163},
    year = {2022},
    doi = {10.1142/S0219455422501632}
}
@article{YAMANO2020115359,
    title = {Influence of boundary conditions on a flutter-mill},
    journal = {Journal of Sound and Vibration},
    volume = {478},
    pages = {115359},
    year = {2020},
    doi = {https://doi.org/10.1016/j.jsv.2020.115359},
    author = {A. Yamano and A. Shintani and T. Ito and C. Nakagawa and H. Ijima}
}

Preparation before analysis

[Step 1] Install the ToolBoxes

The following ToolBoxes in “./XXXX/cores/ToolBoxes/” are required,

For numerical analysis:

  • “Meshing a plate using four noded elements” by KSSV:

https://jp.mathworks.com/matlabcentral/fileexchange/33731-meshing-a-plate-using-four-noded-elements

  • “Sparse sub access” by Bruno Luong:

https://jp.mathworks.com/matlabcentral/fileexchange/23488-sparse-sub-access

  • “Vectorized Multi-Dimensional Matrix Multiplication” by Darin Koblick:

https://jp.mathworks.com/matlabcentral/fileexchange/47092-vectorized-multi-dimensional-matrix-multiplication?s_tid=prof_contriblnk

For plotting results:

  • “mmwrite” by Micah Richert:

https://jp.mathworks.com/matlabcentral/fileexchange/15881-mmwrite

  • “mpgwrite” by David Foti:

https://jp.mathworks.com/matlabcentral/fileexchange/309-mpgwrite?s_tid=srchtitle

  • “mmread” by Micah Richert:

https://jp.mathworks.com/matlabcentral/fileexchange/8028-mmread

[Step 1.2] Add path to installed ToolBoxes

Modify "add_pathes.m" to add path to abovementined installed ToolBoxes as follows,

addpath ./cores/ToolBoxes/XX;

where XX is the name of folder of the installed ToolBox.

[Step 2] Start GUI form

Open the “GUI.fig” from MATLAB.

タイトルなし

[Step 2.1] Pre-setting

Push the "Parameters" button and edit parameters.

[Step 3] Start analysis

Push the “exe” button and wait until the finish of the analysis.

[Step 4] Plot results

Push the “plot” button.

[Step 5] View plotted results

Results (figures and movie) plotted by [Step 4] are in "./save" directory.

Parameters

Analytical condisions are in "./save/param_setting.m"

End_Time = 1.0;             %% Analytical time [s]
d_t = 1e-4;                 %% step time [s]
core_num = 6;               %% The number of CPUs for computing [-]
movie_format = 'mpeg';      %% movie format [-]
% movie_format = 'avi';
speed_check = 0;            %% 

%% Plate
rho_m = 1000;           	%% density [kg/m^3]
Eelastic = 1e+3;        	%% Young's modulus [Pa]
nu = 0.3;                   %% Poiison ratio [-]

Length = 100e-3;          	%% Length [m]
Width = 100e-3;             %% Width [m]
thick = 10e-3;           	%% Thickness [m]
Nx = 8;                   	%% The number of x-directional elements [-]
Ny = 8;                   	%% The number of y-directional elements [-]
N_gauss = 5;                %% Gauss-Legendre [-]

g = 9.81;                   %% gravity acc. [m/s^2]
F_in = -rho_m*g*[ 0 0 1].';	%% gravity [N/m^3]

and boundary conditions for nodes on plate;

%% Boundary conditions
node_r_0 = [ 1];          	%% Node number for fixed node [-]
node_dxr_0 = [ ];        	%% Node number for fixed x-directional gradient [-]
node_dyr_0 = [ ];       	%% Node number for fixed y-directional gradient [-]

Then, boundary conditions for a plate are written as,

  • Clamped at the leading-edge
%% Boundary conditions
node_r_0 = [ 1:Ny+1 ];       %% Node number giving the displacement constraint [-]
node_dxr_0 = [ 1:Ny+1 ];     %% Node number giving x-directional gradient constraint [-]
node_dyr_0 = [ 1:Ny+1 ];     %% Node number giving y-directional gradient constraint [-]
  • Pinned at the leading-edge
%% Boundary conditions
node_r_0 = [ 1:Ny+1 ];     %% Node number giving the displacement constraint [-]
node_dxr_0 = [ ];          %% Node number giving x-directional gradient constraint [-]
node_dyr_0 = [ 1:Ny+1 ];   %% Node number giving y-directional gradient constraint [

where index in vector shows the node index around a plate element to apply boundary conditions.

Gallery

  • Young's modulus: $1.0 \times 10^5 \ \rm{Pa}$
  • density: $7810 \ \rm{kg/m^3}$
  • Poisson ratio: $0.3$
  • Length, width: $0.3 \ \rm{m}$
  • Thickness: $0.01 \ \rm{m}$

untitled

Deformed shape of the pendulum by this code ($8^2$ elements).

untitled2

Deformed shape of the pendulum by this code ($12^2$ elements).

reduced_model

Deformed shape of the pendulum by the preceding report (Model I, $8^2$ elements, interpolated) 2.

Energy

Time series of energy of the falling plate.

Demonstration movie

Stargazers over time

Stargazers over time

License

MIT License

Contributing

Issue reports and pull requests are highly welcomed.

References

Footnotes

  1. A. Shabana, Computational Continuum Mechanics, Chap. 6 (Cambridge University Press, 2008), pp. 231–285.

  2. K. Dufva and A. Shabana, Analysis of thin plate structures using the absolute nodal coordinate formulation, Proc. IMechE Vol. 219 Part K: J. Multi-body Dynamics, 2005.

About

Nonlinear shell dynamics analysis based on FEM shell element with Absolute Nodal Coordinate. Formulation (ANCF).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages