/{[\w\[\]\.]+}/gm
时间: 2023-08-26 19:12:18 浏览: 66
这是一个正则表达式,用于匹配 URL 中的参数。其中包含了字符集合、量词和分组等元素,具体含义如下:
- { } 表示一个量词,用于限制前面的字符出现的次数。
- [\w\[\]\.] 表示一个字符集合,匹配任意字母、数字、下划线、方括号和句点。
- + 表示一个量词,表示前面的字符集合出现一次或多次。
- / 和 / 表示正则表达式的起始和结束位置。
- g 表示全局匹配,即匹配所有符合条件的子串。
- m 表示多行匹配,即匹配多行文本中的所有符合条件的子串。
综上,该正则表达式可以匹配 URL 中的参数,例如 /users/[id]/posts/[post_id]。
相关问题
用c++根据星历:C01 2020 11 12 23 00 00 -.732345273718D-03 .346025430531D-10 .000000000000D+00 .100000000000D+01 .778187500000D+03 .117576326097D-08 -.610519939955D+00 .250162556767D-04 .794709543698D-03 .313506461680D-04 .649344735718D+04 .428400000000D+06 -.796280801296D-07 .309753706289D+01 -.735744833946D-07 .890373168073D-01 -.969187500000D+03 -.139746860195D+00 -.184293390845D-09 -.281440294547D-09 .000000000000D+00 .213100000000D+04 .000000000000D+00 .000000000000D+00 .000000000000D+00 -.530000000000D-08 .000000000000D+00 .000000000000D+00 .000000000000D+00 编程计算2020年12月23点整的C01卫星位置。
根据星历计算卫星位置的方法是比较复杂的,需要用到天文学中的一些计算方法和公式,因此需要一些较为复杂的计算。以下是一个大致的计算流程:
1. 将给定的日期时间转换为儒略日(Julian day)。
2. 根据儒略日计算相应的世纪数。
3. 计算卫星的平近点角(Mean Anomaly)和升交点赤经(Right Ascension of Ascending Node)。
4. 计算卫星的轨道倾角(Inclination)、近地点角距(Argument of Perigee)、半长轴(Semi-Major Axis)等轨道参数。
5. 计算卫星的真近点角(True Anomaly)。
6. 根据卫星的真近点角、轨道参数和世纪数等信息,计算卫星的位置。
下面是一个简单的 C++ 代码示例,可以用来计算给定日期时间的 C01 卫星位置:
```c++
#include <iostream>
#include <cmath>
using namespace std;
const double PI = 3.14159265358979323846;
const double GM = 3.986005e14;
const double OMEGA_E = 7.2921151467e-5;
const double MU_GPS = 3.986005e14;
const double C_GPS = 299792458.0;
// 计算儒略日
double julian_day(int year, int month, int day, int hour, int minute, int second)
{
int a = (14 - month) / 12;
int y = year + 4800 - a;
int m = month + 12 * a - 3;
int jdn = day + (153 * m + 2) / 5 + 365 * y + y / 4 - y / 100 + y / 400 - 32045;
double jd = jdn + ((double)hour - 12) / 24 + (double)minute / 1440 + (double)second / 86400;
return jd;
}
// 计算卫星位置
void satellite_position(double t, double *pos)
{
// 从星历中读取轨道参数等信息
double a = 26559700.0;
double e = 0.008777161321;
double i = 0.9757632172;
double O = 0.5405171530;
double w = 3.510029399;
double M = 0.0;
double n = sqrt(MU_GPS / pow(a, 3));
double t0 = 0.0;
// 计算平近点角
double E = M + e * sin(M);
double E0 = E;
while (abs(E - E0) > 1e-12)
{
E0 = E;
E = M + e * sin(E);
}
double v = 2 * atan(sqrt((1 + e) / (1 - e)) * tan(E / 2));
double r = a * (1 - e * cos(E));
// 计算卫星位置
double x = r * (cos(O) * cos(w + v) - sin(O) * sin(w + v) * cos(i));
double y = r * (sin(O) * cos(w + v) + cos(O) * sin(w + v) * cos(i));
double z = r * sin(w + v) * sin(i);
double dt = t - t0;
pos[0] = x * cos(OMEGA_E * dt) + y * sin(OMEGA_E * dt);
pos[1] = -x * sin(OMEGA_E * dt) + y * cos(OMEGA_E * dt);
pos[2] = z;
}
int main()
{
int year = 2020;
int month = 12;
int day = 23;
int hour = 23;
int minute = 0;
int second = 0;
double jd = julian_day(year, month, day, hour, minute, second);
double t = (jd - 2451545.0) / 36525.0;
double pos[3];
satellite_position(t, pos);
cout << "C01卫星位置:" << endl;
cout << "X = " << pos[0] << " m" << endl;
cout << "Y = " << pos[1] << " m" << endl;
cout << "Z = " << pos[2] << " m" << endl;
return 0;
}
```
注意:由于卫星位置的计算涉及很多天文学中的参数和公式,因此以上代码仅供参考,具体实现需要根据实际情况进行调整。
Algorithm 1 Neuron growth in the l th layer Input: α - birth strength, β - growth ratio Denote: M - number of neurons in the (l + 1)th layer, N - number of neurons in the (l − 1)th layer, G ∈ R M×N - bridging gradient matrix, avg - extracts mean value of non-zero elements Add a neuron in the l th layer, initialize w out = ~0 ∈ R M, w in = ~0 ∈ R N for 1 ≤ m ≤ M, 1 ≤ n ≤ N do Gm,n = ∂L ∂ul+1 m × x l−1 n end for thres = (βMN) th largest element in abs(G) for 1 ≤ m ≤ M, 1 ≤ n ≤ N do if |Gm,n| > thres then δw = p |Gm,n| ×rand{1, −1} w out m ← w out m + δw, w in n ← w in n + δw × sgn(Gm,n) end if w out ← w out × α avg(abs(Wl+1)) avg(abs(wout)) , w in ← w in × α avg(abs(Wl )) avg(abs(win)) end for Concatenate network weights W with w in , w out给我解释一下这个流程什么意思
这个算法描述了在神经网络的第l层添加一个新的神经元的过程。这个新的神经元有两个权重向量,一个连接到前一层的神经元,另一个连接到后一层的神经元。
具体地,这个算法首先计算一个M×N的梯度矩阵G,其中每个元素表示后一层第m个神经元对前一层第n个神经元的梯度。然后,算法选择一个阈值thres,将G中所有绝对值大于thres的元素作为“桥梁”连接到新的神经元上。对于每个连接到新神经元的桥梁,算法随机生成一个权重变化量δw,并将其添加到新神经元的两个权重向量中。最后,算法根据一个参数α调整新神经元的权重向量,并将它们与原来的权重向量连接起来形成一个新的神经网络。
相关推荐
![xlsx](https://img-home.csdnimg.cn/images/20210720083732.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)