Skip to content

Commit

Permalink
deploy: 61e9a66
Browse files Browse the repository at this point in the history
  • Loading branch information
unitasium committed Nov 18, 2024
0 parents commit a08c326
Show file tree
Hide file tree
Showing 139 changed files with 22,979 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 7770ac101390891c9405bb100244e8be
tags: 645f666f9bcd5a90fca523b33c5a78b7
Empty file added .nojekyll
Empty file.
Binary file added _images/baselinearc.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/baselinearc2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/baselinestraight.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/baselinetypes.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/chart1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/elementalframe.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ex-uh60a_fi_fail_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ex-uh60a_fi_fail_2_zoomin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ex_channel_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ex_channel_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/ex_channel_mesh.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplebox.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplebox0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplebox1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplecircle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplecircle1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/exampleibeam.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/exampleibeam0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/exampleibeam1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh1040.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh1041.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh1042.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh1043.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh1044.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh104_comparison.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/examplemh104r.png
Binary file added _images/examplepipe.png
Binary file added _images/examplepipe0.png
Binary file added _images/examplepipe1.png
Binary file added _images/examplepipe2.png
Binary file added _images/filling1.png
Binary file added _images/frames.png
Binary file added _images/joints.png
Binary file added _images/layup.png
Binary file added _images/local_mesh.png
Binary file added _images/local_mesh_define_mark.png
Binary file added _images/param_layup_example_design.png
Binary file added _images/param_layup_example_plot.png
Binary file added _images/point_on_line.png
Binary file added _images/rungui0.png
Binary file added _images/segment.png
Binary file added _images/transforms.png
Binary file added _images/tutorial_box.png
Binary file added _images/tutorial_box_0.png
Binary file added _images/tutorial_box_fill.png
Binary file added _images/tutorial_box_lines.png
Binary file added _images/tutorial_box_order.png
Binary file added _images/tutorial_box_points.png
Binary file added _images/tutorial_box_segments.png
114 changes: 114 additions & 0 deletions _sources/contents/changelog.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
Change log
==========

**VERSION 1.4**

- 1.4.3 (2022/01/11)

- Fixed the issue of plotting element stress and strain results.
- Fixed the issue of plotting dehomogenization results with quadratic elements.
- Added groups for different stress and strain plots.
- Added alternative tag names for material strength properties.
- Added visualization for initial failure analysis results.
- Added a new example for initial failure analysis (ex\_uh60a\_f).
- Simplifed and unified material strength inputs for different types of materials.
- Updated the section of material strength property input in the documentation.

- 1.4.2 (2021/11/05)

- Fixed an issue related with layer generation.

- 1.4.1 (2021/09/01)

- Fixed an issue in assigning theta1 and theta3 for filling components.

- 1.4.0 (2021/06/16)

- Added a new command option to run integrated VABS.
- Added new inputs for the rotor blade specific parameterization.
- Added new inputs for strength property of 'lamina' type materials.
- Added new inputs for assigning orientations for filling materials.
- Added a new input option for recover analysis in VABS. The default is linear beam theory.
- Added a new input option for setting the tolerance used in geometric computation.
- Added the capability of failure analysis using VABS.
- Updated the logging system.
- Changed the default element type to 'quadratic'.
- Unified the input syntax of recovery/dehomogenization of VABS/SwfitComp.
- Fixed the issue of incorrectly parsing numbers with more than one spaces between numbers.
- Fixed an issue in transforming an arc defined by center, start and radius.

**VERSION 1.3**

* 1.3.0 (2021/02/25)

* Added a new capability to create base points using normalized parametric locations on a base line.
* Added a new capability to assign local mesh size for filling components.


**VERSION 1.2**

* 1.2.0 (2020/11/10)

* Added a new capability to create layups from sublayups.
* Added a new capability to create segments using normalized parametric locations on a base line.


**VERSION 1.1**

* 1.1.1 (2020/10/28)

* Fixed the problem of unable to read recover analysis result files on Linux.
* Fixed a problem when the segment is too short while the laminate is too thick.

* 1.1.0 (2020/10/15)

* Added a new format for the input file. Now baselines and layups data are merged into the main input file, to reduce the number of input files needed.
* Added a new material type 'lamina' accepting four numbers for elastic properties.
* Added default small numbers for elastic properties for isotropic materials.
* Updated the fill-type component for non-structural mass.


**VERSION 1.0** (2019/07/01)

* Added capability to create quadratic triangle elements. In the main input file, under the xml element `<general>`, create a sub element `<element_type>` and set it to `quadratic` or `2`. Default is `linear`.
* Added a new output file `*.txt` storing all running messages.
* Changed one of the layup methods tag name from 'explict list' ('el') to 'layer list' ('ll').
* Fixed the crashing issue caused by zero number of layers.
* Fixed the bug that sectional loads were read and written to the distributed loads when doing recovery using VABS.
* Fixed the bug that local lamina data does not overwrite global data.


**VERSION 0.6** (2018/07/01)

* Added xml elements in the main input file for various options of VABS/SwiftComp execution.
* Added xml elements in the main input file for failure analysis of SwiftComp.
* Added a `<basepoints>` element in the baseline file. Now for simple shapes, users do not need to use an extra basepoint file, which can still be included for long point list.
* Added a material database file along with the executable. Now PreVABS will look for materials in this file by default.
* Changed Gmsh library to dynamic/shared library.


**VERSION 0.5** (2018/01/31)

* Added the capability to create nose mass in an airfoil type cross section.
* Added the post-processing function to visualize the recovered strains and stresses in Gmsh.


**VERSION 0.4** (2017/12/04)

* Added the capability to read stacking sequence code.
* Added the parameter to set the number of straight lines to approximate an arc or circle.
* Changed the Gmsh input file name to `*.msh`, where `*` is the cross section name.


**VERSION 0.3** (2017/11/27)

* Updated the manual.
* Changed the default behaviour of the command with input file specified only to preparing VABS input (without running VABS).
* Changed the element tag `<origin>` to `<translate>`. Now the two numbers in this element moves base points and base lines, instead of the origin.
* Changed the element tag `<rotation>` to `<rotate>`.
* Changed the 'level' of a segment from an element to an attribute, with default 1.
* Changed the 'layup_direction' of a segment from an element to an attribute of the layup, with default 'right'.
* Changed the material type 'engineering constants' to 'orthotropic'.
* Set the default element type as 'quadratic'.
* Set the default mesh size to the smallest layer thickness.

16 changes: 16 additions & 0 deletions _sources/contents/examples.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Examples
========

.. toctree::
:maxdepth: 1
:caption: Table of Contents

examples/example_box
examples/example_pipe
examples/example_tube
examples/example_channel
examples/example_airfoil
examples/example_airfoil_recover
examples/example_uh60a_fi

.. example_ibeam
150 changes: 150 additions & 0 deletions _sources/contents/examples/example_airfoil.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
.. _section-airfoil:

Airfoil (MH-104)
================

Problem description
-------------------

.. figure:: /figures/examplemh1040.png
:name: fig_mh104_draw
:width: 5.5in
:align: center

Sketch of a cross section for a typical wind turbine blade [CHEN2010]_.

This example demonstrates the capability of building a cross section having an airfoil shape, which is commonly seen on wind turbine blades or helicopter rotor blades.
This example is also studied in [CHEN2010]_.
A sketch of a cross section for a typical wind turbine blade is shown in :numref:`Fig. %s <fig_mh104_draw>`.
The airfoil is MH 104 (http://m-selig.ae.illinois.edu/ads/coord_database.html#M).
In this example, the chord length :math:`CL=1.9` m.
The origin O is set to the point at 1/4 of the chord.
Twist angle :math:`\theta` is :math:`0^\circ`.
There are two webs, whose right boundaries are at the 20% and 50% location of the chord, respectively.
Both low pressure and high pressure surfaces have four segments.
The dividing points between segments are listed in :numref:`Table %s <table_div_pts>`.
Materials are given in :numref:`Table %s <table_mh104_materials>` and layups are given in :numref:`Table %s <table_mh104_layups>`.
A complete :math:`6\times 6` stiffness matrix is given in :numref:`Table %s <table_airfoil_result>`.
Complete input files can be found in ``examples\ex_airfoil\``, including ``mh104.xml``, ``basepoints.dat``, ``baselines.xml``, ``materials.xml``, and ``layups.xml``.

.. csv-table:: Dividing points
:name: table_div_pts
:header-rows: 2
:align: center

"Between segments", "Low pressure surface", "High pressure surface"
, ":math:`(x, y)`", ":math:`(x, y)`"
"1 and 2", "(0.004053940, 0.011734800)", "(0.006824530, -0.009881650)"
"2 and 3", "(0.114739930, 0.074571970)", "(0.126956710, -0.047620490)"
"3 and 4", "(0.536615950, 0.070226120)", "(0.542952100, -0.044437080)"

.. figure:: /figures/examplemh1041.png
:name: fig_mh1041
:width: 6.5in
:align: center

*Base point*\ s of the tube cross section.

.. figure:: /figures/examplemh1042.png
:name: fig_mh1042
:width: 6.5in
:align: center

*Base line*\ s of the tube cross section.

.. figure:: /figures/examplemh1043.png
:name: fig_mh1043
:width: 6.5in
:align: center

*Segment*\ s of the tube cross section.

.. figure:: /figures/examplemh1044.png
:name: fig_mh104
:width: 6.5in
:align: center

Meshed cross section viewed in Gmsh.

.. csv-table:: Material properties
:name: table_mh104_materials
:header-rows: 2
:align: center

"Name", "Type", "Density", |e1|, |e2|, |e3|, |g12|, |g13|, |g23|, |nu12|, |nu13|, |nu23|
, , |den_si_k|, |mod_si_g|, |mod_si_g|, |mod_si_g|, |mod_si_g|, |mod_si_g|, |mod_si_g|, , ,
"Uni-directional FRP", "orthotropic", 1.86, 37.00, 9.00, 9.00, 4.00, 4.00, 4.00, 0.28, 0.28, 0.28
"Double-bias FRP", "orthotropic", 1.83, 10.30, 10.30, 10.30, 8.00, 8.00, 8.00, 0.30, 0.30, 0.30
"Gelcoat", "orthotropic", 1.83, 1e-8, 1e-8, 1e-8, 1e-9, 1e-9, 1e-9, 0.30, 0.30, 0.30
"Nexus", "orthotropic", 1.664, 10.30, 10.30, 10.30, 8.00, 8.00, 8.00, 0.30, 0.30, 0.30
"Balsa", "orthotropic", 0.128, 0.01, 0.01, 0.01, 2e-4, 2e-4, 2e-4, 0.30, 0.30, 0.30

.. csv-table:: Layups
:name: table_mh104_layups
:header-rows: 2
:align: center

"Name", "Layer", "Material", "Ply thickness", "Orientation", "Number of plies"
, , , |len_si|, :math:`\circ`,
"layup_1", 1, "Gelcoat", 0.000381, 0, 1
, 2, "Nexus", 0.00051, 0, 1
, 3, "Double-bias FRP", 0.00053, 20, 18
"layup_2", 1, "Gelcoat", 0.000381, 0, 1
, 2, "Nexus", 0.00051, 0, 1
, 3, "Double-bias FRP", 0.00053, 20, 33
"layup_3", 1, "Gelcoat", 0.000381, 0, 1
, 2, "Nexus", 0.00051, 0, 1
, 3, "Double-bias FRP", 0.00053, 20, 17
, 4, "Uni-directional FRP", 0.00053, 30, 38
, 5, "Balsa", 0.003125, 0, 1
, 6, "Uni-directional FRP", 0.00053, 30, 37
, 7, "Double-bias FRP", 0.00053, 20, 16
"layup_4", 1, "Gelcoat", 0.000381, 0, 1
, 2, "Nexus", 0.00051, 0, 1
, 3, "Double-bias FRP", 0.00053, 20, 17
, 4, "Balsa", 0.003125, 0, 1
, 5, "Double-bias FRP", 0.00053, 0, 16
"layup_web", 1, "Uni-directional FRP", 0.00053, 0, 38
, 2, "Balsa", 0.003125, 0, 1
, 3, "Uni-directional FRP", 0.00053, 0, 38





Result
------

.. table:: Effective Timoshenko stiffness matrix
:name: table_airfoil_result

=================================== =================================== =================================== =================================== =================================== ===================================
:math:`\phantom{-}2.395\times 10^9` :math:`\phantom{-}1.588\times 10^6` :math:`\phantom{-}7.215\times 10^6` :math:`-3.358\times 10^7` :math:`\phantom{-}6.993\times 10^7` :math:`-5.556\times 10^8`
:math:`\phantom{-}1.588\times 10^6` :math:`\phantom{-}4.307\times 10^8` :math:`-3.609\times 10^6` :math:`-1.777\times 10^7` :math:`\phantom{-}1.507\times 10^7` :math:`\phantom{-}2.652\times 10^5`
:math:`\phantom{-}7.215\times 10^6` :math:`-3.609\times 10^6` :math:`\phantom{-}2.828\times 10^7` :math:`\phantom{-}8.440\times 10^5` :math:`\phantom{-}2.983\times 10^5` :math:`-5.260\times 10^6`
:math:`-3.358\times 10^7` :math:`-1.777\times 10^7` :math:`\phantom{-}8.440\times 10^5` :math:`\phantom{-}2.236\times 10^7` :math:`-2.024\times 10^6` :math:`\phantom{-}2.202\times 10^6`
:math:`\phantom{-}6.993\times 10^7` :math:`\phantom{-}1.507\times 10^7` :math:`\phantom{-}2.983\times 10^5` :math:`-2.024\times 10^6` :math:`\phantom{-}2.144\times 10^7` :math:`-9.137\times 10^6`
:math:`-5.556\times 10^8` :math:`\phantom{-}2.652\times 10^5` :math:`-5.260\times 10^6` :math:`\phantom{-}2.202\times 10^6` :math:`-9.137\times 10^6` :math:`\phantom{-}4.823\times 10^8`
=================================== =================================== =================================== =================================== =================================== ===================================

.. table:: Results from reference [CHEN2010]_
:name: table_airfoil_result_ref

=================================== =================================== =================================== =================================== =================================== ===================================
:math:`\phantom{-}2.389\times 10^9` :math:`\phantom{-}1.524\times 10^6` :math:`\phantom{-}6.734\times 10^6` :math:`-3.382\times 10^7` :math:`-2.627\times 10^7` :math:`-4.736\times 10^8`
:math:`\phantom{-}1.524\times 10^6` :math:`\phantom{-}4.334\times 10^8` :math:`-3.741\times 10^6` :math:`-2.935\times 10^5` :math:`\phantom{-}1.527\times 10^7` :math:`\phantom{-}3.835\times 10^5`
:math:`\phantom{-}6.734\times 10^6` :math:`-3.741\times 10^6` :math:`\phantom{-}2.743\times 10^7` :math:`-4.592\times 10^4` :math:`-6.869\times 10^2` :math:`-4.742\times 10^6`
:math:`-3.382\times 10^7` :math:`-2.935\times 10^5` :math:`-4.592\times 10^4` :math:`\phantom{-}2.167\times 10^7` :math:`-6.279\times 10^4` :math:`\phantom{-}1.430\times 10^6`
:math:`-2.627\times 10^7` :math:`\phantom{-}1.527\times 10^7` :math:`-6.869\times 10^2` :math:`-6.279\times 10^4` :math:`\phantom{-}1.970\times 10^7` :math:`\phantom{-}1.209\times 10^7`
:math:`-4.736\times 10^8` :math:`\phantom{-}3.835\times 10^5` :math:`-4.742\times 10^6` :math:`\phantom{-}1.430\times 10^6` :math:`\phantom{-}1.209\times 10^7` :math:`\phantom{-}4.406\times 10^8`
=================================== =================================== =================================== =================================== =================================== ===================================

.. note:: The errors between the result and the reference are caused by the difference of modeling of the trailing edge. If reduce the trailing edge skin to a single thin layer, then the difference between the trailing edge shapes is minimized, and the two resulting stiffness matrices are basically the same, as shown in :numref:`Fig. %s <fig_mh104_comparison>`.

.. figure:: /figures/examplemh104_comparison.png
:name: fig_mh104_comparison
:width: 6in
:align: center

Comparison of stiffness matrices after modifying the trailing edge.

51 changes: 51 additions & 0 deletions _sources/contents/examples/example_airfoil_recover.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
.. _example-airfoil-recover:

Airfoil (Recover)
=================

Problem description
-------------------

This example continues from the previous one to demonstrate the
dehomogenization analysis. It is assumed that a 1D beam analysis has
been finished, and data of global deformations and loads have been
added to the main input file correctly
(:ref:`See the recover section <section-recover>`). Suppose that the
results in :numref:`Table %s <table_mh104_1dresults>` are used and
default values are kept for others. All files generated from the VABS
homogenization analysis are kept in the same place as input files.
Final visualization is required and the contour plot of one of the
stress components is shown in :numref:`Fig. %s <fig_mh104r>`.
Complete files can be found in ``examples\ex_airfoil_r\``, including
``mh104.xml``, ``basepoints.dat``, ``baselines.xml``, ``materials.xml``,
``layups.xml``, ``mh104.sg``, ``mh104.sg.ech``,
``mh104.sg.K``, ``mh104.sg.opt``, ``mh104.sg.v0``,
``mh104.sg.v1S``, and ``mh104.sg.v22``.

.. csv-table:: Sectional forces and moments
:name: table_mh104_1dresults
:header-rows: 1
:align: center

Quantity, Value
":math:`F_1`, N", 1
":math:`F_2`, N", 2
":math:`F_3`, N", 3
":math:`M_1`, Nm", 4
":math:`M_2`, Nm", 5
":math:`M_3`, Nm", 6





Result
------

.. figure:: /figures/examplemh104r.png
:name: fig_mh104r
:width: 6in
:align: center

Contour plot of recovered nodal stress SN11.

Loading

0 comments on commit a08c326

Please sign in to comment.