我有一个格式如下的数据文件:
ATOM 4 N ASP A 1 105.665 49.507 41.867 1.00 71.64 N
ATOM 5 CA ASP A 1 105.992 48.589 42.982 1.00 70.20 C
ATOM 6 C ASP A 1 107.024 49.191 43.936 1.00 69.70 C
在第1行中,数字(105.665,49.507和41.867)是坐标(x,y,z)的列。如何使用指定半径内的坐标提取整行并将其输出到另一个文件中?将坐标与半径相关联的公式为:
radius = SQRT(x ^ 2 + y ^ 2 + z ^ 2)
答案 0 :(得分:2)
我认为你的意思是:
awk -v R=124.44 '($7^2)+($8^2)+($9^2) < R^2' YourFile
更改R=124.44
以匹配您的半径。
示例输出
ATOM 4 N ASP A 1 105.665 49.507 41.867 1.00 71.64 N
ATOM 5 CA ASP A 1 105.992 48.589 42.982 1.00 70.20 C