> For the complete documentation index, see [llms.txt](https://tlcfem.gitbook.io/suanpan-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tlcfem.gitbook.io/suanpan-manual/integrator/implicit/generalizedalpha.md).

# GeneralizedAlpha

The generalized-$$\alpha$$ method provides second order accuracy with controllable algorithmic damping on high frequency response.

## Syntax

Two forms are available.

```
integrator GeneralisedAlpha (1) [2]
integrator GeneralizedAlpha (1) [2]
# (1) int, unique tag
# [2] double, spectral radius at infinite frequency, default: 0.5

integrator GeneralisedAlpha (1) (2) (3)
integrator GeneralizedAlpha (1) (2) (3)
# (1) int, unique tag
# (2) double, \alpha_f
# (3) double, \alpha_m
```

## Governing Equation

The generalized alpha method assumes that the displacement $$d$$ and the velocity $$v$$ are integrated as such,

$$
d\_{n+1}=d\_n+\Delta{}tv\_n+\Delta{}t^2\left(\left(\dfrac{1}{2}-\beta\right)a\_n+\beta{}a\_{n+1}\right)
,
$$

$$
v\_{n+1}=v\_n+\Delta{}t\left(1-\gamma\right)a\_n+\Delta{}t\gamma{}a\_{n+1}.
$$

The equation of motion is expressed at somewhere between $$t\_n$$ and $$t\_{n+1}$$.

$$
Ma\_{n+1-\alpha\_m}+Cv\_{n+1-\alpha\_f}+Kd\_{n+1-\alpha\_f}=F\_{n+1-\alpha\_f},
$$

which can also be explicitly shown as

$$
M\left(\left(1-\alpha\_m\right)a\_{n+1}+\alpha\_ma\_n\right)+C\left(\left(1-\alpha\_f\right)v\_{n+1}+\alpha\_fv\_n\right)
+K\left(\left(1-\alpha\_f\right)d\_{n+1}+\alpha\_fd\_n\right)=\left(1-\alpha\_f\right)F\_{n+1}+\alpha\_fF\_n,
$$

where $$\alpha\_m$$ and $$\alpha\_f$$ are two additional parameters.

## Default Parameters

To obtain an unconditionally stable algorithm, the following conditions shall be satisfied.

$$
\alpha\_m\le\alpha\_f\le\dfrac{1}{2},\quad\beta\ge\dfrac{1}{4}+\dfrac{1}{2}\left(\alpha\_f-\alpha\_m\right).
$$

Only one parameter is required, the spectral radius $$\rho\_\infty$$ that ranges from zero to one.

The following expressions are used to determine the values of all constants used.

$$
\alpha\_f=\dfrac{\rho\_\infty}{\rho\_\infty+1},\quad \alpha\_m=\dfrac{2\rho\_\infty-1}{\rho\_\infty+1},\quad
\gamma=\dfrac{1}{2}-\dfrac{\rho\_\infty-1}{\rho\_\infty+1},\quad \beta=\dfrac{1}{\left(\rho\_\infty+1\right)^2}.
$$

So that the resulting algorithm is unconditionally stable and has a second order accuracy. The target numerical damping for high frequencies is achieved while that of low frequencies is minimized.

The recommended values of the spectral radius $$\rho\_\infty$$ range from $$0.5$$ to $$0.8$$.

Some special parameters can be chosen.

| $$\alpha\_f$$ | $$\alpha\_M$$ | method         |
| ------------- | ------------- | -------------- |
| $$0.0$$       | $$0.0$$       | Newmark        |
| -             | $$0.0$$       | HHT-$$\alpha$$ |
| $$0.0$$       | -             | WBZ-$$\alpha$$ |

## Accuracy Analysis

![generalizedalpha-0.0](/files/lQbEiLKYJnEKyJnEbPi9) ![generalizedalpha-0.5](/files/ClTBfFx7Pzx4BxSqamRR) ![generalizedalpha-1.0](/files/tNrTyjUtK7i04VpPqF0F)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://tlcfem.gitbook.io/suanpan-manual/integrator/implicit/generalizedalpha.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
