# AxiniteArgs and the Body Class

In this guide, you'll learn about:

* the `AxiniteArgs` class and how to use it
* the `Body` class and how it differs from `axinite`'s standard `Body` class

## What are `AxiniteArgs`?

The `AxiniteArgs` class packages all the data from an Axinite file into one class. It has lots of attributes that can be used to keep track of various simulation parameters.

```python
args.name: str
args.delta: np.float64
args.limit: np.float64
args.action: function
args.t: np.float64
args.bodies: list<axtools.Body>
args.radius_multiplier: float or int
args.rate: float or int
args.retain: int
args.modifier: function
args.backend: function
```

The class also comes with an `unpack` function:

```python
*args.unpack()
```

{% hint style="warning" %}
Remember to unpack the tuple result with a `*`.
{% endhint %}

which can be used to easily supply the args to the `ax.load` function.

### Setting the Limit and Delta

When setting limits and deltas, don't use:

```python
args.delta = delta
args.limit = limit
```

Instead of setting the delta and limit attributes, use the included methods to change them:

```python
args.set_delta(delta)
args.set_limit(limit)
```

To avoid errors during loading.

## The `Body` Class

Although `axinite` comes with a `Body` class already, `axtools` contains an expanded one with more attributes, such as:

```python
body.mass: np.float64
body.r(n): np.ndarray
body.v(n): np.ndarray
body.name: str
body.radius: np.float64
body.color: str
body.light: bool
body.retain: int
body.radius_multiplier: int or float
body.rs: np.ndarray
body.vs: np.ndarray
```

The `axtools.Body` class can also take the place of an `axinite.Body`. You can create one with:

```python
body = axtools.Body("name", mass, limit, delta, position=[...], velocity=[..], color="color", light=False, retain=200, radius_multiplier=2)
```


---

# Agent Instructions: 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:

```
GET https://jewels86.gitbook.io/axinite/axtools/axiniteargs-and-the-body-class.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
