Skip to content
Snippets Groups Projects
Commit 115798b6 authored by Rostislav Chudoba's avatar Rostislav Chudoba
Browse files

elastc model modified

parent 165dd5d2
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
# Example: Calculate elastic stiffness of a given composite
## Task
What is the initial stiffness of a reinforced concrete cross section shown in the Figure with the thickness of 10~mm and width of 100 mm.
The cross-section is reinforced with 6 layers of textile fabrics made of CAR-EP3300 specified in the table below ![image.png](../fig/mixture_rule_elastic.png)
Predict the tensile stiffness of a reinforced concrete cross section shown in the Figure with the thickness of 10~mm and width of 100 mm.
The cross-section is reinforced with 6 layers of textile fabrics made of CAR-EP3300 specified in the table below
![image.png](../fig/mixture_rule_elastic.png)
%% Cell type:markdown id: tags:
## Theory
The derived mixture rule will be used to solve the task
%% Cell type:markdown id: tags:
![image.png](attachment:image.png)
%% Cell type:markdown id: tags:
## Data
%% Cell type:markdown id: tags:
\begin{array}{|c|c|c|c|c|c|}
\mathrm{Label}
& \mathrm{Material}
& \mathrm{Area }
& \mathrm{Grid\; spacing}
& \mathrm{Stiffness}
& \mathrm{Strength\; (characteristic)}
\\
\hline
&
& [\mathrm{mm}^2]
& [\mathrm{mm}]
& [\mathrm{MPa}]
& [\mathrm{Mpa}]
\\
\hline
\mathrm{CAR-EP3300}
& \mathrm{carbon/proxy}
& 1.84
& 25.77
& 240000
& 3500
\\
\hline
\mathrm{solidian\; GRID \; Q95}
& \mathrm{carbon/proxy}
& 3.62
& 36.0
& 240000
& 3200
\\
\end{array}
%% Cell type:markdown id: tags:
# How to evaluate an expression?
%% Cell type:markdown id: tags:
**Calculator:** Let us use Python language as a calculator and evalute the mixture rule for the exemplified cross-section.m
%% Cell type:code id: tags:
``` python
A_roving = 1.84 # [mm**2]
n_layers = 6 # -
spacing = 25.77 # [mm]
thickness = 10 # [mm]
width = 100 # [mm]
E_carbon = 240000 # [MPa]
E_concrete = 28000 # [MPa]
```
%% Cell type:code id: tags:
``` python
A_composite = width * thickness
n_rovings = width / spacing
A_layer = n_rovings * A_roving
A_carbon = n_layers * A_layer
A_concrete = A_composite - A_carbon
E_composite = (E_carbon * A_carbon + E_concrete +A_concrete) / A_composite
E_composite = (E_carbon * A_carbon + E_concrete * A_concrete) / A_composite
E_composite
```
%% Output
37082.18859138533
%% Cell type:markdown id: tags:
Thus, the composite has an effective stiffness of 37 GPa.
%% Cell type:markdown id: tags:
# How to construct a model?
%% Cell type:markdown id: tags:
To explore the multitude of compbinations let us provide a model which can be interactively used to study the available design options
%% Cell type:markdown id: tags:
In contrast to the previously performed numerical evaluation, we now express the derived equations as mathematical symbols. To do this, let us use a Python package `sympy` to do symbolic algebra.
%% Cell type:code id: tags:
``` python
import sympy as sp
```
%% Cell type:markdown id: tags:
The parameters of the model are now introduced as `sympy.symbols`.
%% Cell type:code id: tags:
``` python
A_roving = sp.Symbol('A_r')
n_layers = sp.Symbol('n_l')
spacing = sp.Symbol('d')
thickness = sp.Symbol('h')
width = sp.Symbol('b')
E_carbon = sp.Symbol('E_car')
E_concrete = sp.Symbol('E_c')
```
%% Cell type:markdown id: tags:
The above derived equations can be rephrased in the form
%% Cell type:code id: tags:
``` python
A_composite = width * thickness
n_rovings = width / spacing
A_layer = n_rovings * A_roving
A_carbon = n_layers * A_layer
A_concrete = A_composite - A_carbon
E_composite = (E_carbon * A_carbon + E_concrete * A_concrete) / A_composite
sp.simplify(E_composite)
```
%% Output
$\displaystyle \frac{A_{r} E_{car} n_{l} - E_{c} \left(A_{r} n_{l} - d h\right)}{d h}$
(A_r*E_car*n_l - E_c*(A_r*n_l - d*h))/(d*h)
%% Cell type:markdown id: tags:
**The first model:**
Instead of a number, we have now a symbolic expression showing the influence of the individual parameters on a design characteristic, i.e. on the material stiffness. This expression is a model that was constructuted using the conditions of compatibility, equilibrium and constitutive laws.
Using this model, we can explore the behavior of the composite.
%% Cell type:markdown id: tags:
# Next steps
%% Cell type:markdown id: tags:
- Install anaconda environment
- Download this notebook from the moodle folder Jupyter notebooks
- Start jupyter
- Open the notebook
- Learn the basics of how to interact with Jupyter notebook
- Login to jupyter.rwth-aachen.de
- Navigate to this mixture rule example
- Evaluate the cells by issueing the [Shift+Return] key combination
%% Cell type:markdown id: tags:
## Further readings
- To get more support in installing the environment you can check this page
[Quick Start Guide](https://jupyter-notebook-beginner-guide.readthedocs.io/en/latest/index.html)
- To solve our problems we will use packages that are included in the Python bundle of containing
packages that efficiently support scientific-computing tasks. To motivate you to dig in deeper in
Python check this race of programming languages over the last 50 years and wait till the end of it ;-) [Most Popular Programming Languages 1965 - 2019](https://www.youtube.com/watch?v=Og847HVwRSI)
- Basic features of Jupyter, Python, and of the packages that we will use
for plotting, linear algebra, algebraic manipulations, and data array manipulations will be shortly
explained. the that we will use to support our model development will be addressed in a separate notebook.
# Why Jupyter Lab? Why Python?
- [Jupyterlab introduction](https://youtu.be/A5YyoCKxEOU) [7 mins] video explaining the basic features of jupyter notebook within jupyter lab
- Check this race of programming languages over the last 50 years and wait till the end of it ;-) [Most Popular Programming Languages 1965 - 2019](https://www.youtube.com/watch?v=Og847HVwRSI)
- Useful packages
- `matplotlib` - plotting
- `sympy` - algebraic manipulations
- `numpy` - data array manipulations
will be shortly explained.
%% Cell type:code id: tags:
``` python
```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment