24小时热门版块排行榜    

查看: 727  |  回复: 0

yali1990

金虫 (小有名气)

[求助] 自规避行走链

#include "stdafx.h"
#include "math.h"
#include"stdlib.h"//调用rand()及srand()函数
#include "time.h"
#define PI 3.1415926
void mass_center_Rg2()
{
        double X[10000][3];//链段坐标
        double MC_X[3];//质心坐标
        int l=500;//链条数
        int N;//聚合度
        srand((unsigned)time(NULL));
        double a,b,d;
        double r=2.0;
        double Sum_Rg2;
        double Rg2;
        double  X_Dis;
        double  Y_Dis;
        double  Z_Dis;
        FILE *write;
    write = fopen("Rg2_compute-1.txt","w";
        for(N=1000;N<=2000;N+=20)
{
                Sum_Rg2=0.0;
                for(int j=1;j         {
                        d=0.0;
                        X[0][0]=0.0;
                        X[0][1]=0.0;
                        X[0][2]=0.0;
                        MC_X[0] = 0.0;
                        MC_X[1] = 0.0;
                        MC_X[2] = 0.0;
                        for(int i=0;i                 {
                                d=((float)rand())/RAND_MAX;
                                a=d*PI;
                                b=d*PI*2.0;
                                X[i+1][0]=X[0]+r*sin(a)*cos(b);//链单元的坐标
                                X[i+1][1]=X[1]+r*sin(a)*sin(b);//链单元的坐标
                                X[i+1][2]=X[2]+r*cos(a);//链单元的坐标                                                                 
                         if((i+1)>=2)                                                                                                                                                               
         {
                                    for(int counter=i-1;counter>=0;counter--)  
                            {
                                           double r0,x0,y0,z0;  
                                   x0=X[i+1][0]-X[counter][0];
                                   y0=X[i+1][1]-X[counter][1];
                                   z0=X[i+1][2]-X[counter][2];
                                   r0=pow(x0,2)+pow(y0,2)+pow(z0,2);
                                   if(r0>=4.0)
                                    {                                             
                                       d=((float)rand())/RAND_MAX;
                                           a=d*PI;
                                           b=d*PI*2.0;
                                           X[i+1][0]=X[0]+r*sin(a)*cos(b);//链单元的坐标
                                           X[i+1][1]=X[1]+r*sin(a)*sin(b);//链单元的坐标
                                           X[i+1][2]=X[2]+r*cos(a);//链单元的坐标
                                                                                                           
                                }
                                       else continue;
                                 }      
                        }
            }
                        for(int i=1;i<=N;i++){
                                MC_X[0]=MC_X[0]+ X[0];
                                MC_X[1]=MC_X[1]+ X[1];
                                MC_X[2]=MC_X[2]+ X[2];
                          }
                       
                            MC_X[0]=MC_X[0]/N;
                            MC_X[1]=MC_X[1]/N;
                            MC_X[2]=MC_X[2]/N;
                               //printf("%f, %f ,%f\n",MC_X[0],MC_X[1],MC_X[2]);
                       
                        Rg2=0.0;
                       
                        for(int i=1;i<=N;i++){   
                                X_Dis=X[0]-MC_X[0];
                                Y_Dis=X[1]-MC_X[1];
                                Z_Dis=X[2]-MC_X[2];
                                Rg2+=pow(X_Dis,2)+pow(Y_Dis,2)+pow(Z_Dis,2);
                        }
                       
                        Rg2= Rg2/N;
                        Sum_Rg2+=Rg2;
                }
               
                Sum_Rg2=Sum_Rg2/l; //平均,求出均方半径  
                fprintf(write,"输出N=%d,Sum_Rg2=%f\n",N,Sum_Rg2);
                printf("N= %d \n", N);
        }
        fclose(write);
}



int _tmain(int argc, _TCHAR* argv[])
{
                  mass_center_Rg2();//调用函数求出链的质心和Rg

            getchar();
            return 0;
}

    这个是我编的代码,目的是每产生一个坐标,都判断它是否与前面的坐标重合,如果重合,则重新产生一个新的坐标。接下来是算质心坐标,进而计算均方回转半径。
   目前我的问题是:这个和我之前计算无规行走链,得到的均方回转半径值基本一致,我要怎么改变坐标的判断条件?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 yali1990 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 师弟论文见刊大半年才想起来申请专利,还能抢救一下吗? +5 13108017953 2026-09-21 5/250 2026-09-27 16:46 by Leogzhya
[教师之家] 某top大学教授说“能够在市场中兑现的能力才是真能力”无比同意! +3 zju2000 2026-09-26 3/150 2026-09-27 16:26 by lala1008
[博后之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:42 by 4IW0sJvtEqX8
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:26 by 4IW0sJvtEqX8
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:21 by 4IW0sJvtEqX8
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 ViqFlLSxHDGt 2026-09-26 3/150 2026-09-27 10:03 by 4IW0sJvtEqX8
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 oeyPlfmMUpOC 2026-09-26 3/150 2026-09-27 09:13 by 4IW0sJvtEqX8
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 GxESXJmptOtQ 2026-09-25 4/200 2026-09-27 06:44 by XgCC8uTcwILl
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 GxESXJmptOtQ 2026-09-25 4/200 2026-09-27 06:42 by XgCC8uTcwILl
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 GxESXJmptOtQ 2026-09-25 3/150 2026-09-27 06:32 by XgCC8uTcwILl
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 06:08 by XgCC8uTcwILl
[公派出国] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 06:05 by XgCC8uTcwILl
[考研] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 05:56 by XgCC8uTcwILl
[论文投稿] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 vQZoDrrm7mUF 2026-09-25 4/200 2026-09-27 05:56 by XgCC8uTcwILl
[找工作] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +5 vQZoDrrm7mUF 2026-09-25 5/250 2026-09-27 05:53 by XgCC8uTcwILl
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 vQZoDrrm7mUF 2026-09-25 3/150 2026-09-27 05:44 by XgCC8uTcwILl
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 vQZoDrrm7mUF 2026-09-25 4/200 2026-09-27 05:44 by XgCC8uTcwILl
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 vQZoDrrm7mUF 2026-09-25 6/300 2026-09-27 05:42 by XgCC8uTcwILl
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 PGTSwSC3F6nQ 2026-09-24 5/250 2026-09-25 11:19 by yhq9807
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 PGTSwSC3F6nQ 2026-09-24 7/350 2026-09-25 11:18 by yhq9807
信息提示
请填处理意见