---
title: ?rotmg
description: "构造一个修改的转换平面。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/accel/kunpengaccel_kml_16_0028.html
sourcePath: /source/zh/kunpengboostkithistory/2200/accel/kunpengaccel_kml_16_0028.html
indexId: f2e096af898bded7937faed4d9f130e21daf635ef2792d0c662d552f99a91e7f74
---
# ?rotmg

构造一个修改的转换平面。

#### 接口定义

C interface：

void cblas_srotmg(float *d1, float *d2, float *b1, const float b2, float *P);

void cblas_drotmg(double *d1, double *d2, double *b1, const double b2, double *P);

Fortran interface：

CALL SROTMG(D1, D2, X1, X2, PARAM)

CALL DROTMG(D1, D2, X1, X2, PARAM)


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| d1 | 在srotmg中，d1是单精度浮点类型。 在drotmg中，d1是双精度浮点类型。 | d1取值 | 输入/输出 |
| d2 | 在srotmg中，d2是单精度浮点类型。 在drotmg中，d2是双精度浮点类型。 | d2取值 | 输入/输出 |
| b1 | 在srotmg中，b1是单精度浮点类型。 在drotmg中，b1是双精度浮点类型。 | b1取值 | 输入/输出 |
| b2 | 在srotmg中，b2是单精度浮点类型。 在drotmg中，b2是双精度浮点类型。 | b2取值 | 输入/输出 |
| P | 在srotmg中，P是单精度浮点类型。 在drotmg中，P是双精度浮点类型。 | 转换矩阵H | 输出 |


#### 依赖

#include "kblas.h"


#### 示例

C interface：

```
double d1 = 10.0, d2 = 1.0, x1 = -2.0, x2 = 4.0;
double p[5];
cblas_drotmg(&d1, &d2, &x1, x2, p);
/**
* d1:7.142857, d2:0.714286, x1:-2.800000, x2:4.000000
* param:0.000000, 0.000000, 2.000000, -0.200000, 0.000000
*/
```

Fortran interface：

```
REAL(8) :: D1=10.0
REAL(8) :: D2=1.0
REAL(8) :: X1=-2.0
REAL(8) :: X2=4.0
REAL(8) :: PARAM(5)
EXTERNAL DROTMG
CALL DROTMG(D1, D2, X1, X2, P)
*     D1:7.142857, D2:0.714286, X1:-2.800000, X2:4.000000
*     PARAM:0.000000, 0.000000, 2.000000, -0.200000, 0.000000
```
