* Fix deprecation warnings from tests
* Refactor tests so that ´@testset` is usually called in master file
`runtests.jl`, not inside test file. Later on we can convert tests
to examples.
* Syntax of tests now follow more closely syntax used currently in
JuliaFEM. We have had earlier studies with different kind of syntaxes,
now we have kind of explicit way to do things.
Let's use Literate.jl to automatically generate usage examples.
* Automatically generate documentation from other packages (first try to include each package's docs/src/index.md, but if that fails, then use README.md to introduce the package).
* Add example how to calculate local element matrices.
* Add example how to perform 2d contact analysis.
Development of auto-differentiated mortar contact mechanics in 2D is moved to own separate package, MortarContact2DAD. Other changes are similar to what is done with MortarContact2D: elements are added to problems using `add_slave_elements!` and `add_master_elements!` instead of `add_elements!`, to make interface more explicit. Also, problem name is `Contact2DAD`, so the dimension is now explicitly stated in problem name. (Also have `Mortar2DAD`, compare to the `Mortar2D` and `Contact2D` of `MortarContact2D.jl`.)
Moved plane contact related stuff to own separate package
`MortarContact2D.jl`, where the development continues.
The following changes to test files are done:
1) Problem name for plane mortar coupling is `Mortar2D` (was `Mortar`
before), and later on 3d coupling will be `Mortar`. So the dimension
of coupling operator is explicitly given in a problem name.
2) Before elements to coupling was defined using
```julia
update!(problem.elements, "master elements", master_elements)
add_elements!(problem, [slave_elements; master_elements])
```
Now, explicitly give master and slave elements as
```julia
add_slave_elements!(problem, slave_elements)
add_master_elements!(problem, master_elements)
```
Keep on mind that Lagrange multipliers are in slave side.
Heat transfer analysis is moved to its own package where the development continues. Two small modifications are needed for test files:
- Instead of `problem.properties.formulation`, we have two separate problems, `PlaneHeat` for two-dimensional problems and `Heat` for three-dimensional problems.
- Unnecessary prefixing of field names is changed. For example, now we simply have only "thermal conductivity" and not prefixed "temperature thermal conductivity".
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.
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
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
* running v0.6 conversion code proposed by @ovainola in #108.
* change travis so that build is done using 0.6
* documentation is build from 0.6
* fix most of deprecation warnings
* fix test to pass 0.6
- remove some automatically generated stuff not should even be in
repository
- set up lint + Documents.jl in same way it is defined in freshly started projects
- add lint + doctest to after_success so that build pass, these needs to be fixed later
- build is failing on nightly (0.7) but it's ok for release (0.5.2)
- Documenter.jl supports doctests, so this closes least #23
- build system is now on Travis-CI completely, so this closes also #68
- MED file actually supports multiple element sets or node sets for
single element/node. This is now implemented.
- Minor cleanup of code, etc..
- Fixes issue #111.
- Added TimerOutputs.jl to REQUIRE file
- JuliaFEM has now TimerOutput handle `to` and function `print_statistics()` to get summary of time and memory usage
- TimerOutputs is used in LinearSolver at the moment and tested in file `test_elasticity_2d_linear_with_surface_load.jl`
* refactored code for solvers.
* Added elementary tests for least-squares fitting of strain and stress fields
* A more realistic postprocess + Xdmf writing test
* removed debug keyword argument from test
* Rewrite update_xdmf!
New function to update Xdmf file no longer takes Solver object but
xdmf, problem, time and fields to write, for example
julia> update_xdmf!(xdmf, problem, 0.0, ["displacement", "temperature"])
All problems are written separately and put together into one
SpatialCollection, allowing to have more structured Xdmf and making
it easier to write complicated field configurations. Support for Xdmf
API 3.0 added.
* Support for Tensor6 field writing
* moved update_xdmf! to io.jl
* Removed some empty files
* Not use old Postprocessor, obsolete code.
* Not use old XDMF (obsolete code). Fixed test.
* removed some postprocessing to pass test, maybe we should drop abaqus.jl from code as obsolete
* add function get_temporal_collection back, it's used by update_xdmf of modal solver
* postprocess of boundary problems also
* added test for contact pressure. dl+quad test output was written in wrong file, fixed.
* postprocess for contact pressure
* contact pressure postprocess
* with boundary problems always store also the primary unknown field
* Change "reaction force" -> "lambda"
* testing postprocess of reaction force also
* sign convention
* contact 3d patch test, standard lagrange, small sliding, linear tet4 elements
* tet4 dual basis contact patch test pass
* contact 3d patch test, standard lagrange, small sliding, linear tet4 elements
* tet4 dual basis contact patch test pass
* Patch test for linear elements standard lagrange / dual lagrange pass now
* Patch test for quadratic contact surfaces for standard + dual basis pass
* refactoring
* renamed files
* Improvements to preprocess scripts
* convert several elements to node sets in one command
* possibility to find particular node from mesh filtered by node set
* 2d small sliding contact patch test, linear elements
* Added backward compatibility
* 2d contact algorithms pass patch tests
* test data for 2d contacts
* no common models in different tests. testing generalized alpha stabilization
* Preprocess tests
* moved tests from test_preprocess_aster_reader.jl to test_preprocess.jl
* generalized-alpha time integration, alpha=0.0 by default
* Improvements to logging
* JuliaFEM.jl: can set environment variable to one of logging levels: OFF, CRITICAL, ERROR, WARNING, INFO, DEBUG
* problems_contact_2d_autodiff.jl: do not loop over nodes if logging level != DEBUG