> For the complete documentation index, see [llms.txt](https://docs.yuzu.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yuzu.finance/technical/smart-contracts/yuzu-clmm/example-usage/tick-math-module.md).

# Tick Math Module

* **Name**: `yuzuswap::tick_math`
* **Description**: This module provides functions to work with ticks and their corresponding square root prices. In YuzuSwap, the square root price is represented in a fixed-point format 48x80, using a `u128` number.

### Sqrt Price Formula

To compute the client-side square root price (`sqrt_price_x80`), use the following formula:

`sqrt_price_x80 = floor(sqrt(price) * 2^80)`

For example, if the price is 1.5, then:

`sqrt_price_x80 = floor(sqrt(1.5) * 2^80) = 1480625697465890259337216`

### Public Functions

#### Calculate Tick from Square Root Price

Calculates the tick value corresponding to a given square root price.

```
public fun get_tick_at_sqrt_price(sqrt_price: u128): u32
```

**Function Parameters**

| Parameter    | Type   | Description                                        |
| ------------ | ------ | -------------------------------------------------- |
| `sqrt_price` | `u128` | The square root price in fixed-point format 48x80. |

**Return Value**

| Type  | Description                                            |
| ----- | ------------------------------------------------------ |
| `u32` | The tick value corresponding to the given sqrt\_price. |
