|
As i said, i use an iterative method. In a for loop, for example consider: for(i=1;i<=n;i++)
At the beginning i would declare 2 pointers:
double *Qi1=new double [ni1]
double *Qi=new double[ni]
So, if you consider that i correspond to a date, Qi is a pointer on an array which contains ni+1 values at date i and Qi1 a pointer on an array which contains ni1+1 values at date i-1.
In fact, to calculate the value on the array pointed by Qi, we need to know the values at date i-1. After, we have calculated the values, we need to go to the next step, and calculate value at date i+1, so that Qi "becomes" the preceding array, so i have to consider that values in Qi have to be put in Qi1.
|
|
|
|
|
Your explanation and code fragment are a little confusing, perhaps posting a more detailed code fragment would make it clearer.
Michael
|
|
|
|
|
double *BermudanSwaption::Tab_Alpha(COleDateTime StartDate,COleDateTime SwaptionEndDate,COleDateTime SwapEndDate,int TypeOfStep,int NumberOfStep,int BaseAnnuelle,int JMax,int dt,double dr,double M,_variant_t RateTable,_variant_t VolatilitySurface)
{
//comme pour le calcul du nombre de périodes, on suppose les
//dates deja ajustées. De même le nombre de pas est deja calculé
//et passé en paramètres
//double *Qi1,*Qi;
double Alpha;
int i,j;
int ni,ni1;
COleDateTimeSpan span_dt;
//on veut retourner uniquement la branche basse de l'arbre, c'est
//à dire que pour chaque i, l'état j vaut 0.
span_dt=dt;
Alpha=-log(ZeroCoupon(StartDate,StartDate.operator +(span_dt),SwaptionEndDate,SwapEndDate,BaseAnnuelle,RateTable,VolatilitySurface))/dt;
*pTab_Alpha=Alpha;
for(i=1;i<=NumberOfStep;i++)
{
if(i
|
|
|
|
|
double *Qi=new double[2*ni+1];
double *Qi1=new double[2*ni1+1];
*Qi1=1;
for(j=0;j<=2*ni;j++)
{
*(Qi+j)=Arrow_Debreu(i,j,JMax,dr,dt,M,Alpha,Qi1);
}
Alpha=Alpha_i(StartDate,SwaptionEndDate,SwapEndDate,BaseAnnuelle,RateTable,VolatilitySurface,i,JMax,dr,dt,Qi);
*(pTab_Alpha+i)=Alpha;
for(j=0;j<=2*ni;j++)
{
*(Qi1+j)=*(Qi+j);
}
delete[] Qi;
delete[] Qi1;
Using vector you can do this easily. I still don't understand why you are doing this exactly, but using vector you could do the same thing by using the copy algorithm, with a back_inserter if need be, or just as a copy of the second vector is less than or equal to the first. Either way, allocating the vector size first would stop messy memory allocation stuff going on as you continually push_back.
Christian
As I learn the innermost secrets of the around me, they reward me in many ways to keep quiet.
Men with pierced ears are better prepared for marriage. They've experienced pain and bought Jewellery.
|
|
|
|
|
We are trying to create a flash support player using DirectX/DirectDraw/DirectShow (Win32API/COM/VC++). Is it possible to create any DirectShow filters which support flash or any flash rendering into DirectDraw surface.
1)Whether DirectX/DirectDraw/DirectShow supports Macromedia media flash files?.
2)If so, what are the codecs available for flash.
3)How to implement Flash support using DirectShow/DirectDraw/Direct3D
4)What are the minimum requirements like OS/software/Tools/Hardware needed?.
5)Is there any other solutions/workarounds to achieve the Macromedia flash support in DirectX.
Kamlesh
|
|
|
|
|
Flash has it's own SDK, and I believe is also an ActiveX control ( not sure about that, but on my PC I can add Macromedia Flash Factory object as a registered control ). Have you looked at the Macromedia site ? There is also a web site for flash developers, I don't know the URL but search in Australia for David Mitchie and you will find it.
Christian
As I learn the innermost secrets of the around me, they reward me in many ways to keep quiet.
Men with pierced ears are better prepared for marriage. They've experienced pain and bought Jewellery.
|
|
|
|
|
I want an source code for real time graph plotting for discrete event simulation project. I u have any then please send me as early as possible. OR if u know about any resource for concerned project then let me know.
Imran Farooqui
|
|
|
|
|
Check article Plot Graphic Library in OpenGL section.
Jonathan de Halleux, Belgium.
|
|
|
|
|
Hello,
I want to made my application to behave in such a way that when i change the color of one view in MDI application i want to redraw all the MDI windows. Is there is any way to do this.....
Thanks in advance....
J. Peter.....
|
|
|
|
|
Look at CDocument::UpdateAllViews. You could record the color change in the document and the call UpdateAllViews using a private hint value. In all the views let the OnUpdate handler do an Invalidate() when lHint == YourPrivateValue.
Cheers
Steen.
"To claim that computer games influence children is rediculous. If Pacman had influenced children born in the 80'ies we would see a lot of youngsters running around in dark rooms eating pills while listening to monotonous music"
|
|
|
|
|
Thanks for the reply...
Actually i have created many child windows using the architecture (i have MDI application) i have each separate view with the its own document and this view/ document i have loaed in to a new frame...
i want to update these frames ......
|
|
|
|
|
Put a function in the app class that iterates through all of the doc templates, and iterates through all the documents for each template and call UpdateAllViews(NULL) for each document.
void CMyApp::UpdateAllViews()
{
POSITION posTemplate = GetFirstDocTemplatePosition();
while (posTemplate)
{
CDocTemplate* pTemplate = (CDocTemplate*)GetNextDocTemplate(posTemplate);
POSITION posDoc = pTemplate->GetFirstDocPosition();
while (posDoc)
{
CDocument* pDocument = pTemplate->GetNextDoc(posDoc);
if ((pDocument=) != NULL)
{
pDocList->UpdateAllViews(NULL);
}
}
}
}
|
|
|
|
|
Thanks for the Reply....
I was alos following this approach but it is not working as i again used this way to solve my problem......
|
|
|
|
|
Then you will have to describe your problem in more detail. What exactly are you trying to update?
There is a parameter list associated with UpdateAllViews() which essentially allows you to control pretty much any aspect of the updating process.
Also, you cannot do this from the CMainFrame class without a moderate amount of extra work.
|
|
|
|
|
Here are the Details what i am facing.....
I Have Multiple frames in my Application. And all these frames are derived from CChildFrame and I have created Three views and documents attached with each frame.
For one frame i loaded one view and exactly one Document...
Now I have a problem for the updation of the frames...
|
|
|
|
|
You'll have to do three things:
1) Use this function call inside your iterator function (the one I gave you earlier):
posDoc->UpdateAllViews(NULL, (WPARAM)1);
2) In your view->OnUpdate() function, add code to handle the second parameter. If it's set to 1, update the frame like so:
GetParentFrame()->SendMessage(MY_MESSAGE, 0, 0);
3) Add a message handler in your frame class to handle the message.
|
|
|
|
|
I'd like to exchange text, audio or video information between two hosts threw NetMeeting API. But where can I find any tips on this topic? Thanks a lot.
Tiny Flying Elephant loves flying...
|
|
|
|
|
Have you looked at the Samples in the Platform SDK. I found them to be quiet useful when I did a little bit of NetMeeting Video work a while back.
Michael
|
|
|
|
|
hello,
i would like to know whether it is possible to use the CreateFile() function
on a netware drive. I have tried to create a handle on a directory by
pointing to \\servername\directory and map drive but somehow the error
return saying that the path is not found. Is there a problem with the
protocol cos the netware that i am using runs on IPX protocol.
Any help would be great.
Thanks
wye kean
|
|
|
|
|
How would I set up file saving/opening on this?
-Matt Newman
|
|
|
|
|
In OnSerialise, read and write the individual grid positions, and the other info you want ( grid size, column sizes, etc. )
Christian
As I learn the innermost secrets of the around me, they reward me in many ways to keep quiet.
Men with pierced ears are better prepared for marriage. They've experienced pain and bought Jewellery.
|
|
|
|
|
OK. One last question I have pointer m_pGrid declared in C%Name%View how do I access it in C%Name%Doc? Thanks for the help.
-Matt Newman
|
|
|
|
|
CMainFrame* pMain = (CMainFrame*)AfxGetMainWnd();
CMyView * pView = (CMyView*)pMain->GetActiveView();
pView->m_pGrid->etc.
Christian
As I learn the innermost secrets of the around me, they reward me in many ways to keep quiet.
Men with pierced ears are better prepared for marriage. They've experienced pain and bought Jewellery.
|
|
|
|
|
I am using a for statment to go through it all but how would I create a variable based on the cell it is working on say CString CellXY X and Y being the cell's coordinates?
-Matt Newman
|
|
|
|
|
I haven't done any serialisation for *ages* but I wold do something like this:
ar << m_pGrid->GetColumns()
ar << m_pGrid->GetRows()
for (int x = 0; x < m_pGrid->GetColumns(); ++x)
for (int y = 0; y < m_pGrid->GetRows(); ++y)
ar << m_pGrid->GetData(x,y);
I don't know if ANY of these functions exist or if I'm serialising properly, but you get the idea. You'd need to save the number of rows & columns first for when you read back in.
Christian
As I learn the innermost secrets of the around me, they reward me in many ways to keep quiet.
Men with pierced ears are better prepared for marriage. They've experienced pain and bought Jewellery.
|
|
|
|