Jukka Aho
467cf4db27
README.rst -> README.md, we prefer Markdown
2017-08-21 18:00:09 +03:00
Jukka Aho
64494d2a1f
remove CONTRIBUTING.rst, new contributing guide is in juliafem.org
2017-08-21 18:00:09 +03:00
Jukka Aho
457dc00879
Add module Abaqus back to code
...
Abaqus module is added back to code into `deprecations.jl` to make
code in seminar paper run on 0.3.3.
2017-08-21 10:05:32 +03:00
Jukka Aho
35fea30dac
New test for Tet10 mass matrix
2017-08-20 20:51:00 +03:00
Jukka Aho
4070b309c8
Fix test of zero eigenmodes
...
A better known example.
2017-08-20 20:51:00 +03:00
Jukka Aho
fe3daae587
Deprecate assemble!(problem, time, Val{:mass_matrix})
...
Use function assemble_mass_matrix!(problem, time)
2017-08-20 20:51:00 +03:00
Jukka Aho
d01d1ea6e6
Improve performance of mass matrix assembly
...
* Avoid unnecessary memory allocations.
* Decrease integration order.
2017-08-20 20:51:00 +03:00
Jukka Aho
8f420fbaa5
Increase performance of writing results to Xdmf
2017-08-20 17:03:21 +03:00
Jukka Aho
923aad6f7c
Calculate displacement gradient using FEMBasis
2017-08-20 14:49:42 +03:00
Jukka Aho
720d76a4ba
Eliminate Dirichlet boundary conditions differently
...
Slicing is very expensive operation on sparse matrices. Avoid slicing
by calculating matrix product `K_red = C1*K*C1`, where C1 is diagonal
matrix. This should be much cheaper.
2017-08-20 12:13:12 +03:00
Jukka Aho
ecaf8cb7fc
Use global timer to measure performance
...
This makes syntax a little bit easier. Also, measure more accurately performance
of modal solver under investigation.
2017-08-19 13:30:01 +03:00
Jukka Aho
0fffdb52ba
Test group_by_element_type
2017-08-19 00:01:47 +03:00
Jukka Aho
675f787c9a
Preallocate matrices in Elasticity problem
...
Now style is to assemble all same kind/dimension elements at same time
in one function call, so it's possible to allocate all necessary
matrices only one time.
2017-08-18 23:27:26 +03:00
Jukka Aho
7eba2f782f
New function group_by_element_type
...
Function groups a list of elements to several lists, where each
list contains elements of particular type.
2017-08-18 20:15:45 +03:00
Jukka Aho
a24a5945a1
Fix deprecation warnings when using Julia 0.6.0
2017-08-18 17:45:52 +03:00
Jukka Aho
ef66a8f74b
Assemble several elements at a time
...
Now assemble! takes a vector of elements as input. This makes it
possible to preallocate memory for common matrices making code super
fast.
2017-08-17 17:49:39 +03:00
Jukka Aho
aabcda2e26
Implement new function create_nodal_elements
...
This function can be used to create elements from node set defined
in mesh. Resulting elements are of type Poi1, that is, they don't
have any volume but it's still possible to add boundary conditions
to them which are then enforced in discrete sense.
2017-08-17 15:53:20 +03:00
Jukka Aho
89af6faad5
Fix test
...
Now both JuliaFEM and JuliaFEM.Preprocess export add_elements! and
it must be spesifically pointed out which one is used in test.
2017-08-16 17:20:55 +03:00
Rapo
367c4711b3
Implement new function add_elements!
...
Add new elements to the problem.
2017-08-16 17:20:55 +03:00
Jukka Aho
1966b7f894
Remove functions used rarely
...
A new problem can be defined with 8(!) different styles. Let's remove
the ones not used often.
2017-08-16 16:57:56 +03:00
Jukka Aho
a6b198b1ab
Templating data type of Field
...
Use template in type Field to make type stabile code. This should fix
problems related to type stability.
2017-08-16 00:00:03 +03:00
Jukka Aho
ab7a661712
New test
2017-08-15 15:49:50 +03:00
Jukka Aho
7efa5aa01e
Fix return types for fields not defined
...
Problem arises typically when boundary condition is created using
"nodal" elements of type Poi1, but forget to define geometry and
```solvers("geometry", 0.0)``` fails in Xdmf update function. Fixed.
2017-08-15 15:49:50 +03:00
Jukka Aho
1505205dcd
use FEMBasis / BasisInfo structure
...
Calculate basic element info using BasisInfo
2017-08-14 21:20:44 +03:00
Jukka Aho
08055ecd21
add *.mem and *.cov to .gitignore
2017-08-14 20:41:16 +03:00
Jukka Aho
5357ed88c8
Set up entry point for element assembly
...
From here we can preallocate matrices to improve efficiency of code.
2017-08-14 18:26:37 +03:00
Jukka Aho
b6b0bc3f55
Change coords field type from Point to Tuple
...
Change to Tuple, Array is allocating memory.
2017-08-14 17:10:02 +03:00
Jukka Aho
681d53ee9a
Separate problems_elasticity.jl
...
Have separate file problems_elasticity_2d.jl for plane stress, plane
strain, axisymmetric etc. problems.
2017-08-13 22:49:05 +03:00
Jukka Aho
4939f49760
Remove obsolete code from heat assembly
...
Postprocess-function is deprecated and not used anywhere.
2017-08-13 22:45:11 +03:00
Jukka Aho
d88dc8742e
Remove needless stuff from postprocess_utils.jl
...
Not needed in core code.
2017-08-13 22:28:13 +03:00
Jukka Aho
b87952ae14
Add another loop to assembly procedure
...
Yet another loop, but this way we can preallocate matrices when
constructiong local matrices of elements with same dimensions (which is
the case in practice)
2017-08-13 22:16:53 +03:00
Jukka Aho
a11fafc25b
use TimerOutsputs to measure performance
2017-08-13 14:37:44 +03:00
Jukka Aho
4d0dbc44a5
add simple usage example
2017-08-05 15:07:56 +03:00
Jukka Aho
6893ec3fa8
basic doc + @autodoc functions
2017-08-05 15:07:56 +03:00
Jukka Aho
96714acc18
Add new method to set properties for problem
...
```
update!(body.properties, "a" => "b", "c" => "d")
```
Usage example is shown in
`test_elasticity_2d_linear_with_surface_load.jl`.
2017-08-05 14:42:13 +03:00
Jukka Aho
0f0c49da62
Cleanup of obsolete files
...
A lot of old files from old documentation systems etc. is in package.
These are now removed or moved. Old notebooks are in docs/tutorials.
This PR closes issue #124 .
2017-08-05 12:08:46 +03:00
Jukka Aho
3d3e9bb441
Calculate shape functions using FEMBasis.jl
...
A lot of code is moved to FEMBasis.jl regarding
calculating basis / shape functions of finite elements.
* add FEMBasis to REQUIRE
* remove obsolete files
* remove obsolete test files
* make integration point iterable
* loosen type definitions
* get length of element rather from basis than connectivity
* calculate midpoint of reference element
* wrong input argument to eval_basis! fixed
2017-08-05 12:03:05 +03:00
Tony Kelman
4038c2f0ce
Use @__DIR__ instead of Pkg.dir
...
this allows installing and loading the package from elsewhere
2017-08-05 12:02:00 +03:00
Jukka Aho
b7880906ee
separate optomechanical experiments to own package
2017-08-04 22:29:25 +03:00
Jukka Aho
cfba8b62f0
add package dependency AsterReader.jl
2017-08-03 21:06:55 +03:00
Jukka Aho
ce9b028d26
add package dependency FEMQuad.jl
2017-08-03 20:29:19 +03:00
Jukka Aho
724196b4a4
AbaqusReader.jl tagged, added to REQUIRE
2017-08-02 01:30:32 +03:00
Jukka Aho
648bbe2a40
use AsterReader.jl ( #136 )
...
Functions used to read Code Aster file format are now in separate package AsterReader.jl
2017-07-29 13:57:27 +03:00
Jukka Aho
cbc85ee665
Move Abaqus-related functions to own file ( #137 )
2017-07-29 10:51:19 +03:00
Jukka Aho
e46c0a1ad4
Use FEMQuad.jl to calculate quadrature rules for elements ( #134 )
2017-07-23 18:42:04 +03:00
Vlad Stoian
ef0897f4b2
Change README link to new CONTRIBUTING.rst ( #132 )
2017-07-22 17:24:10 +03:00
Jukka Aho
e13d6482ce
Use PkgTestSuite for CI ( #131 )
...
This standardizes the CI process between JuliaFEM packages
2017-07-21 16:28:03 +03:00
Jukka Aho
2af7e0e1bb
move cloning of AbaqusReader.jl from .travis to build/deps.jl ( #130 )
2017-07-21 15:57:46 +03:00
Jukka Aho
e97f9b070a
REQUIRE: change julia 0.5 -> 0.6 ( #129 )
2017-07-21 11:08:17 +03:00
Jukka Aho
a666bb4bd8
Use package AbaqusReader.jl ( #127 )
...
Source code related to read and parse ABAQUS .inp files is now living in
it's own repository `AbaqusReader.jl` and in this commit we cleanup the
same files from this repository.
- add AbaqusReader to .travis.yml because it's not registered package yet
- initialize Mesh from AbaqusReader.jl dict
- remove ABAQUS tests and files moved to AbaqusReader.jl
- remove references to old module Abaqus
- move ABAQUS code to preprocess.jl (what is left)
- close issue #122
- close issue #55
2017-07-21 00:40:52 +03:00