* @brief Transform the position vectors from spherical to cartesian coordinates * * @param pos * @return af::array */
| 403 | * @return af::array |
| 404 | */ |
| 405 | af::array sph_to_cart_position(const af::array& pos) { |
| 406 | af::array r = pos(0, af::span); |
| 407 | af::array o = pos(1, af::span); |
| 408 | af::array p = pos(2, af::span); |
| 409 | |
| 410 | af::array x = r * af::sin(o) * af::cos(p); |
| 411 | af::array y = r * af::sin(o) * af::sin(p); |
| 412 | af::array z = r * af::cos(o); |
| 413 | |
| 414 | af::array transformed_pos = af::join(0, x, y, z); |
| 415 | |
| 416 | return transformed_pos; |
| 417 | } |
| 418 | |
| 419 | /** |
| 420 | * @brief Computes the inverse of a 4x4 matrix with the layout |
no test coverage detected