24СʱÈÈÃŰæ¿éÅÅÐаñ    

²é¿´: 3369  |  »Ø¸´: 23
µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû

zyj8119

ľ³æ (ÖøÃûдÊÖ)


[½»Á÷] ¡¾ÇóÖú¡¿³ÌÐòÔËÐÐÒѾ­ÎÞ´íÎ󣬵«ÊÇÊäÈëÎļþÓÐÎÊÌ⣬Çó½Ì¡£

CODE:
#include
#include
#include
#include
using namespace std;
class splin1
{
private:
        int n,m;
        double *x,*y,*dy,*ddy,*t,*z,*dz,*ddz,integ;
        double *s;
public:
        splin1 (int nn,int mm)
        {
                n=nn;m=mm;
                x=new double[n];
                y=new double[n];
                dy=new double[n];
                ddy=new double[n];
                s=new double[n];
                t=new double[n];
                z=new double[m];
                dz=new double[m];
                ddz=new double[m];
        }
        void input();
        void interp();
        void output();
        ~splin1()
        {delete[] x,y,dy,ddy,t,z,dz,ddz,s;}
};

void splin1::input()

{
        int k;
        char str1[20];
        cout<<"\nÊäÈëÎļþÃû:";
        cin>>str1;
        ifstream fin(str1);
        if(!fin)
        {cout<<"\n²»ÄÜ´ò¿ªÕâ¸öÎļþ"<         for(k=0;k         {fin>>x[k];fin>>y[k];}
        fin>>dy[0]>>dy[n-1];
        for(k=0;k>t[k];
        fin.close();
}

void splin1::interp()
{
        int i,j;
        double h0,h1,alpha,beta;
        s[0]=dy[0];dy[0]=0.0;
        h0=x[1]-x[0];
        for(j=1;j<=n-2;j++)
        {
                h1=x[j+1]-x[j];
                alpha=h0/(h0+h1);
                beta=(1.0-alpha)*(y[j]-y[j-1])/h0;
                beta=3.0*(beta+alpha*(y[j+1]-y[j])/h1);
                dy[j]=-alpha/(2.0+(1.0-alpha)*dy[j-1]);
                s[j]=(beta-(1.0-alpha)*s[j-1]);
                s[j]=s[j]/(2.0+(1.0-alpha)*dy[j-1]);
                h0=h1;
        }
        for(j=n-2;j>=0;j--)
                dy[j]=dy[j]*dy[j+1]+s[j];
        for(j=0;j<=n-2;j++)s[j]=x[j+1]-x[j];
        for(j=0;j<=n-2;j++)
        {
                h1=s[j]*s[j];
                ddy[j]=6.0*(y[j+1]-y[j])/h1-2.0*(2.0*dy[j]+dy[j+1])/s[j];
        }
        h1=s[n-2]*s[n-2];
        ddy[n-1]=6.*(y[n-2]-y[n-1])/h1+2.*(2.*dy[n-1]+dy[n-1])/s[n-2];
        integ=0.0;
        for(i=0;i<=n-2;i++)
        {
                h1=0.5*s[i]*(y[i]+y[i+1]);
                h1=h1-s[i]*s[i]*s[i]*(ddy[i]+ddy[i+1])/24.0;
                integ=integ+h1;
        }
        for(j=0;j<=m-1;j++)
        {
                if(t[j]>=x[n-1])i=n-2;
                else
                {
                        i=0;
                        while(t[j]>x[j+1])i=i+1;
                }
                h1=(x[j+1]-t[j])/s[i];
                h0=h1*h1;
                z[j]=(3.0*h0-2.0*h0*h1)*y[i];
                z[j]=z[j]+s[i]*(h0-h0*h1)*dy[i];
                dz[j]=6.0*(h0-h1)*y[i]/s[i];
                dz[j]=dz[j]+(3.0*h0-2.0*h1)*dy[i];
                ddz[j]=(6.0-12.0*h1)*y[i]/(s[i]*s[i]);
                ddz[j]=ddz[j]+(2.0-6.0*h1)*dy[i]/s[i];
                h1=(t[j]-x[i])/s[i];
                h0=h1*h1;
                z[j]=z[j]+(3.0*h0-2.0*h0*h1)*y[i+1];
                z[j]=z[j]-s[i]*(h0-h0*h1)*dy[i+1];
                dz[j]=dz[j]-6.0*(h0-h1)*y[i+1]/s[i];
                dz[j]=dz[j]+(3.0*h0-2.0*h1)*dy[i+1];
                ddz[j]=ddz[j]+(6.0-12.0*h1)*y[i+1]/(s[i]*s[i]);
                ddz[j]=ddz[j]-(2.0-6.0*h1)*dy[i+1]/s[i];
        }
}

void splin1::output()
{
        int i;
        char str2[20];
        cout<<"\nÊä³öÎļþÃû:";
        cin>>str2;
        ofstream fout(str2);
        if(!fout)
        {cout<<"\n²»ÄÜ´ò¿ªÕâ¸öÎļþ"<         cout<             <         for(i=0;i         {
                fout<                     <                 cout<                         <         }
        fout<         cout<         <         for(i=0;i         {
                fout<                 <                 cout<                 <         }
        fout<         fout<         fout.close();
}

int main()
{
        splin1 solution(12,8);
        solution.input();
        solution.interp();
        solution.output();
}
               

       

ÊäÈëÎļþΪ£º
0.52  5.28794
8.0   13.8400
17.95 20.2000
28.65 24.9000
50.65 31.1000
104.6 36.5000
156.6 36.6000
260.7 31.0000
364.4 20.9000
468.0 7.80000
507.0 1.50000
520.0 0.200000

1.86548 -0.046115

4.0  14.0  30.0  60.0  130.0  230.0 450.0  515.0
½á¹û³öÏÖÕâ¸öÎÊÌ⣺[Session started at 2011-04-06 17:46:04 +0800.]
GNU gdb 6.3.50-20050815 (Apple version gdb-1469) (Wed May  5 04:36:56 UTC 2010)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-apple-darwin".tty /dev/ttys000
Loading program into debugger¡­
Program loaded.
run
[Switching to process 1601]
Running¡­

ÊäÈëÎļþÃû:splin1.txt

²»ÄÜ´ò¿ªÕâ¸öÎļþsplin1.txt

Debugger stopped.
Program exited with status value:1.(gdb)
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

» ÇÀ½ð±ÒÀ²£¡»ØÌû¾Í¿ÉÒԵõ½:

²é¿´È«²¿É¢½ðÌù

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

smart0193

ľ³æ (СÓÐÃûÆø)


¡ï ¡ï
cenwanglai(½ð±Ò+2): ллÌáÐÑ 2011-04-08 12:36:27
ÒýÓûØÌû:
Originally posted by zyj8119 at 2011-04-07 22:05:19:
ÎÒ¼ì²éÁË·þÎñÀïÃæµÄsecurity center,ÊǽûÓÃ״̬¡£¡£¡£

Äã¹ý²»È¥µÄÕýºÃÊÇÊä³ö²¿·Ö£¬ÊÇÒª½¨Á¢ÐÂÎļþµÄÄÚÈÝ¡£ÎÒÒÔǰҲÓöµ½¹ý£¬±ÈÈç360°²È«ÎÀÊ¿¡¢ÈðÐÇɱ¶¾Èí¼þµÈ£¬Ä³Ð©°²È«ÉèÖýûÖ¹²»¿ÉÐųÌÐòÔÚÓ²ÅÌÉÏ´´½¨ÐÂÎļþµÄ¡£
11Â¥2011-04-08 02:01:25
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
²é¿´È«²¿ 24 ¸ö»Ø´ð

zyj8119

ľ³æ (ÖøÃûдÊÖ)


ÒýÓûØÌû:
Originally posted by zyj8119 at 2011-04-06 20:39:34:
[code]#include<iostream>
#include<iomanip>
#include<fstream>
#include<cmath>
using namespace std;
class splin1
{
private:
        int n,m;
        double *x,*y,*dy,*ddy,*t,*z,*dz ...

ÎÒÒѾ­°Ñ³ÌÐòÓëÊý¾ÝÎļþ·ÅÔÚÒ»¸öÎļþ¼ÐÏÂÃæ¡£¡£¡£
2Â¥2011-04-06 20:44:24
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

smart0193

ľ³æ (СÓÐÃûÆø)


¡ï ¡ï ¡ï
zyj8119(½ð±Ò+1):лл²ÎÓë
΢³¾¡¢ÃÎÏë(½ð±Ò+2): лл²ÎÓëÓ¦Öú¡­¡­ 2011-04-07 17:26:38
ÎÒÓÃVC6ÔËÐÐÁËÄãµÄ³ÌÐò£¬²ÉÓõÄÒ²ÊÇÄã¸ø³öµÄÀý×ÓÎļþ£¬Ã»ÓÐÎÊÌ⣬¿ÉÒÔÊä³ö½á¹û¡£ÈçÏ£º
            0.52         5.28794   -6.27744e+066    2.84681e+066
               8           13.84    1.90782e+066   -6.58235e+065
           17.95            20.2   -5.40918e+065    1.66027e+065
           28.65            24.9    1.93591e+065   -2.87356e+064
           50.65            31.1   -7.10913e+064     4.6735e+063
           104.6            36.5    1.61149e+064   -1.44065e+063
           156.6            36.6    5.22698e+063    1.02188e+063
           260.7              31   -6.36429e+064   -2.34503e+063
           364.4            20.9    2.48875e+065    8.37238e+063
             468             7.8    -9.3144e+065   -3.11584e+064
             507             1.5    2.47047e+066    2.05615e+065
             520             0.2   -6.27744e+066   -2.89728e+066

   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132
   -6.27744e+066    1.93191e+265   -9.23265e+198    2.94154e+132

6.20039e+068

ÄãµÄÎÊÌâÊDz»ÊÇÓÉÓÚÄãµÄÊäÈëÎļþ»¹ÔÚ´ò¿ª×Å£¿ÔÚÖ´ÐгÌÐòµÄʱºò£¬Òª¹Ø±ÕËü
3Â¥2011-04-07 09:37:51
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

zyj8119

ľ³æ (ÖøÃûдÊÖ)


ÒýÓûØÌû:
Originally posted by smart0193 at 2011-04-07 09:37:51:
ÎÒÓÃVC6ÔËÐÐÁËÄãµÄ³ÌÐò£¬²ÉÓõÄÒ²ÊÇÄã¸ø³öµÄÀý×ÓÎļþ£¬Ã»ÓÐÎÊÌ⣬¿ÉÒÔÊä³ö½á¹û¡£ÈçÏ£º
            0.52         5.28794   -6.27744e+066    2.84681e+066
               8           13.84    1.90782e+066 ...

ÎÒÔ­À´ÓõÄÊÇ xcode,ÏÖÔÚÓÃVC6.0±àÒëÁË£¬µ«ÊÇ»¹ÊÇÓÐÎÊÌ⣬ÔËÐе½ÕâÒ»²½¾ÍÍ£Ö¹ÁË£º
4Â¥2011-04-07 13:37:23
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[»ù½ðÉêÇë] ʱ¼ä´ÁÓÖ±äÁË8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[»ù½ðÉêÇë] 2027¹ã¶«Ê¡½ÜÇà +3 ÄÌţСºÚ 2026-08-15 6/300 2026-08-16 20:07 by ÄÌţСºÚ
[»ù½ðÉêÇë] ¿ìÅ©ÀúÆßϦ½ÚÁË£¬ÇáËÉһϣ¬ÄÐÈËÇÄÇÄ»°£¬Å®Ê©Ö÷Çë²»Òª½øÀ´¡£ +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[»ù½ðÉêÇë] filecode=ºóÃæµÚÒ»¸öÊÇ´óд×Öĸ +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[»ù½ðÉêÇë] ¸÷λµÀÓÑ£¬ÎÒҪȥÀ¥Ã÷Íæ¼¸Ì죬»ØÀ´¼û¡£ +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[»ù½ðÉêÇë] ÊÇÕâÖܳö½á¹û»¹ÊÇÏÂÖܳö½á¹û£¿ +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[»ù½ðÉêÇë] Ææ¹Ö£¬Á½¸öÈ˵Äfilecode¹Ì¶¨¶Î´ÓÍ·µ½Î²Ò»Ä£Ò»Ñù +8 ²¼²¼ºÍÒ»¶þ 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[»ù½ðÉêÇë] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[»ù½ðÉêÇë] FileCodeÄÜ¿´³öɶ£¿ +10 ÒªÀÖ¹ÛÒ«¸ç 2026-08-10 32/1600 2026-08-14 09:37 by ÒªÀÖ¹ÛÒ«¸ç
[»ù½ðÉêÇë] ¾²µÈ»ù½ð½á¹û +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by ÇÒÌý»¢Ð¥
[»ù½ðÉêÇë] ÖØÒªÀ´Ô´£º±¾ÖÜÄ©³ö½á¹û +10 ˲ϢÓîÖæ 2026-08-12 10/500 2026-08-13 15:46 by likettle
[»ù½ðÉêÇë] Filecode ÓÖ±äÁË£¬¾Þ±ä +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by Сľ³æ6752397
[»ù½ðÉêÇë] ·ÖÏíÒ»ÏÂÎÒ֮ǰÒÑÖÐÇàCµÄ¼Æ»®ÊéµÄfilecode +4 ²¼²¼ºÍÒ»¶þ 2026-08-11 5/250 2026-08-13 12:56 by cratir
[»ù½ðÉêÇë] ½áºÏÈ˹¤ÖÇÄÜ£¬ÖÜÒ×´«Í³ÎÄ»¯£¬filecode´ò·ÖÖÆÀ´ÁË£¬3·ÖÒÔÉÏÏ£ÍûºÜ´ó¡£ +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[»ù½ðÉêÇë] 2019ÄêÇàÄê»ù½ðº­ÆÀÒâ¼û£¬´ó¼Ò¿´¿´¼¸¸öA£¬¼¸¸öB? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by ߣèè
[»ù½ðÉêÇë] ×ÛÊöÂÛÎÄ×÷Ϊ´ú±í×÷»á²»»áÓ°ÏìÆÀÉóר¼ÒµÄÓ¡Ïó·Ö£¿ +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[»ù½ðÉêÇë] °ïæ¿´¿´fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by ±ùÐÄÓñºøÇç
[»ù½ðÉêÇë] ÎªÊ²Ã´ÍøÉϺܶàÈË˵±¾ÖÜ 12ºÅ³ö½á¹û +6 ˲ϢÓîÖæ 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[»ù½ðÉêÇë] ʲôʱºò³ö½á¹û£¬ÓÐ×ÉѯÇþµÀ£¿£¿£¿ +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[»ù½ðÉêÇë] È·¶¨ÁË£¬¹ú×ÔÈ»21ºÅ·Å°ñ +6 ²¼²¼ºÍÒ»¶þ 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û