-2

我需要你的帮助。我有一个如下的数据文件,

frames.trr  frame   0:00                    
    natoms= 1000    step=   0   time=0.0000000e+00  lambda= 0
    box (3x3):                  
    box[    0]={    1.72E+01    0.00E+00    0.00000e+00}        
    box[    1]={    0.00E+00    1.52E+01    0.00000e+00}        
    box[    2]={    0.00E+00    0.00E+00    1.53731e+01}        
    x   (1000x3):                   
    x[  0]={    1.22E+01    1.06E+01    1.33530e+01}        
    x[  1]={    1.15E+01    7.92E+00    5.99100e+00}        
    x[  2]={    1.42E+01    1.30E+01    1.52530e+01}    

                        ....

    x[1000]={   1.42E+01    1.30E+01    1.52530e+01}    
    v   (1000x3):                   
    v[  0]={    2.40E-01    -1.34E-01   -2.53100e-01}       
    v[  1]={-6.91001e-02    -8.42E-02   -2.24600e-01}           
    v[  2]={-8.99700e-01    1.50E-02    5.57800e-01}

                        ....

    v[1000]={-8.99700e-01   1.50E-02    5.57800e-01}
frames.trr  frame   1:00                    
    natoms= 1000    step=   2   time=2.0000001e-03  lambda= 0
    box (3x3):                  
    box[    0]={    1.72E+01    0.00E+00    0.00000e+00}        
    box[    1]={    0.00E+00    1.52E+01    0.00000e+00}        
    box[    2]={    0.00E+00    0.00E+00    1.53731e+01}        
    x   (1000x3):                   
    x[  0]={    1.22E+01    1.06E+01    1.33525e+01}        
    x[  1]={    1.15E+01    7.92E+00    5.99055e+00}        
    x[  2]={    1.42E+01    1.30E+01    1.52541e+01}        
    x[  3]={    1.35E+01    1.27E+01    1.08896e+01}    

                        ....

    x[1000]={   1.42E+01    1.30E+01    1.52530e+01}    
    v   (1000x3):                   
    v[  0]={    2.40E-01    -1.34E-01   -2.53100e-01}       
    v[  1]={-6.91001e-02    -8.42E-02   -2.24600e-01}           
    v[  2]={-8.99700e-01    1.50E-02    5.57800e-01}

                        ....

    v[1000]={-8.99700e-01   1.50E-02    5.57800e-01}

我想1.22E+01 1.06E+01 1.33530e+01从每行的三列中读取数字 ( ) 并跳过其他标题。我该怎么做呢?

4

1 回答 1

0

您可以使用 MATLAB 的数据导入向导。您可以指定分隔符,如下所示: 在此处输入图像描述

在主页功能区(右侧的导入数据)上访问它: 在此处输入图像描述

它将为您生成一个脚本,您可以将其用于许多数据文件。从那里,您可以使用一个简单的for循环来提取后面的数字"X[ 0]={"

于 2016-02-24T19:37:36.803 回答