⚙️ 全局设置(Options)#

Options 是 MotrixSim 中的全局配置对象,用于设置物理仿真的各项参数。这些参数会影响仿真的精度、稳定性和性能。

基本概念#

常用的配置参数包括:

参数

说明

默认值

timestep

仿真时间步长(秒)

0.002

gravity

重力加速度 [x, y, z]

[0, 0, -9.81]

max_iterations

约束求解器的最大迭代次数

100

配置方式#

通过 XML 配置#

在 MJCF 文件中,可以使用 <option> 标签来配置参数:

<mujoco>
    <option timestep="0.002" gravity="0 0 -9.81" iterations="100"/>
</mujoco>

通过代码配置#

可以通过 SceneModeloptions 属性来获取和修改配置。


# ---------Try to access options----------
options = model.options
print(f"model.options: {options}")
# Get gravity
gravity = options.gravity  # noqa: F841
# Get timestep
timestep = options.timestep  # noqa: F841
# Get max iterations
max_iterations = options.max_iterations  # noqa: F841
# Get solver tolerance
solver_tolerance = options.solver_tolerance  # noqa: F841
# Get simulation flags
disable_gravity = options.disable_gravity  # noqa: F841
disable_contacts = options.disable_contacts  # noqa: F841
disable_impedance = options.disable_impedance  # noqa: F841
# ----------End----------

# Set gravity
options.gravity = [0, 0, 9.8]

for i in range(50):
    step(model, data)
    render.sync(data)

# Set gravity
options.gravity = [0, 0, -9.8]

for i in range(200):
    step(model, data)
    render.sync(data)

# Set simulation flags
options.disable_contacts = True
options.disable_impedance = True

完整示例代码参见 examples/options.py

API Reference#

更多与 Options 相关的 API,请参考 Options API