Skip to content

Commit

Permalink
Added illustration
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilippeMaincon committed Jan 6, 2025
1 parent b7986cc commit 59a4ea8
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
branches:
- main
- dev
- doc
# - doc
tags: '*'
pull_request:

Expand Down
Binary file added docs/src/iFEMsmall.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 7 additions & 6 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,19 @@ CurrentModule = Muscade

# [Introduction](@id purpose)

## [FEM-optimization problems](@id examples_FEM_op)
## FEM-optimization problems

**[Muscade.jl](https://github.com/SINTEF/Muscade.jl) is a [Julia](https://julialang.org) package for the description and solution of optimization problems constrained by the equilibrium of a finite element (FEM) model.**

The problems solved by `Muscade` are defined by two components:
**[Muscade.jl](https://github.com/SINTEF/Muscade.jl) is a [Julia](https://julialang.org) package for the description and solution of optimization problems constrained by the equilibrium of a finite element (FEM) model.** The problems solved by `Muscade` are defined by two components:

1) A fairly classical FEM model (the constraints) - but with more *degrees of freedom* (refered to as "dofs" in the following) than usual: In `Muscade`, dofs are separated into three `classes`:

1. `X`-dofs are the classical dofs of a finite element model. To each `X`-dofs corresponds one equilibrium equation of the FEM model (duality).
2. `U`-dofs typicaly represent unknown external loads acting on the system, that vary with time.
3. `A`-dofs typicaly represent unknown model parameters or design parameters that remain constant in time.

2) A function of the above dofs. It can represent a cost to be minimized, or a probability to be maximized. This function is necessary because the FEM model alone has more unknowns that it has equations (a form of ill-posedness).
2) A "target" function of the above dofs. It can represent a cost to be minimized, or a probability to be maximized. This function is necessary because the FEM model alone has more unknowns that it has equations (a form of ill-posedness).

`Muscade` deals with both static problems, and dynamic problems (with systems that evolve over time).
`Muscade` deals with static problems (FEM-equilibrium at a given time, and a target function that depends on the values of the dofs at that time), and dynamic problems (FEM-equilibrium at all time steps, and a target function that depends on the values, of derivatives, of the dofs at all time steps).

## Applications

Expand All @@ -31,6 +29,9 @@ FEM-optimization problems include a variety of applications:

**Load identification and monitoring**: Given incomplete and noisy measurements of the response `X` of a system, what are the loads `U` that are most likely to have caused a response close to what has been measured? The target function describes prior knowledge of the load processes, and the type, value and precision of the measurements.

![iFEMsmall](iFEMsmall.jpg)
*Conceptual representation of load identification and response monitoring. `U`-dof in red `X`-dof in magenta, measurement data in black and evaluated measurement (not a `Muscade` analysis output)in green. The figure is not a `Muscade` analysis output.*

**Model identification**: Adjust the model parameters `A` of a system (model calibration, damage detection) given measurements on its response `X` when exposed to at least partly unknown (`U`) load. As in load identification problems, the target function describes prior knowledge of the load processes, and the measurements. In addition, it expresses prior knowledge of the state of the structure.

**Optimal control**: how to steer (`U`) a system with many dofs `X` into a wanted behaviour? The target function describes the cost of actuation and the cost of deviation from a target behaviour.
Expand Down

0 comments on commit 59a4ea8

Please sign in to comment.