&LL What's that?

As I typed in the below code

 {parms,f,g,h,retcode}=CML(data,0,&LL,parms);

there encountered a problem which says

Undefined symbols

LL

So please kindly let me know how to solve this.

 

4 Answers



0



The CML program needs to calculate the user written likelihood function. The way that you tell CML which function is the likelihood function is by passing in a pointer to your likelihood function. The concept of a pointer can sometimes seem confusing, but the basic idea is that the ampersand (&) operator retrieves the address or location where CML can find your likelihood function.

It sounds like what your code is missing is a procedure named LL. Take a look at some of the CML examples in the GAUSSHOME/examples directory (cml1.e, etc). They should be helpful, but here is a partial example. For the sake of brevity, I will assume that our code has already defined the variables data and parms and will not repeat that. What we need to do is create a likelihood procedure and then pass in a pointer to that function.

proc (1) = my_likelihood(x, z);
//likelihood calculations here
endp;

 {parms,f,g,h,retcode}=CML(data,0,&my_likelihood,parms);

aptech

1,773


0



For the likelihood calculation, do we normally have it self-written or we can take from a part of the big thick cml.src? since when I pasted the source code from cml.src, there appears many syntax errors.

one more thing, I have the light version of 9.0, that's no problem to deal with all cml library, right?

 

newbie.



0



1. The likelihood function is a user supplied procedure. Check out section 2.3 in the manual (cml2.0.pdf). The manual can be found in GAUSSHOME/doc (which if you have GAUSS Light 9.0 would be C:\gausslt9.0\doc by default). You should never need to take any code from cml.src.

2. GAUSS Light 9.0 is compatible with CML. If you are a student, you can contact Aptech and get a newer version of GAUSS Light for free. I would recommend that.

Finally, there is nothing wrong with being a newbie. 🙂 That is how everybody starts.

aptech

1,773


0



Thank you so much 🙂 I really appreciate your help and support.

Cheers!

Your Answer

4 Answers

0

The CML program needs to calculate the user written likelihood function. The way that you tell CML which function is the likelihood function is by passing in a pointer to your likelihood function. The concept of a pointer can sometimes seem confusing, but the basic idea is that the ampersand (&) operator retrieves the address or location where CML can find your likelihood function.

It sounds like what your code is missing is a procedure named LL. Take a look at some of the CML examples in the GAUSSHOME/examples directory (cml1.e, etc). They should be helpful, but here is a partial example. For the sake of brevity, I will assume that our code has already defined the variables data and parms and will not repeat that. What we need to do is create a likelihood procedure and then pass in a pointer to that function.

proc (1) = my_likelihood(x, z);
//likelihood calculations here
endp;

 {parms,f,g,h,retcode}=CML(data,0,&my_likelihood,parms);
0

For the likelihood calculation, do we normally have it self-written or we can take from a part of the big thick cml.src? since when I pasted the source code from cml.src, there appears many syntax errors.

one more thing, I have the light version of 9.0, that's no problem to deal with all cml library, right?

 

newbie.

0

1. The likelihood function is a user supplied procedure. Check out section 2.3 in the manual (cml2.0.pdf). The manual can be found in GAUSSHOME/doc (which if you have GAUSS Light 9.0 would be C:\gausslt9.0\doc by default). You should never need to take any code from cml.src.

2. GAUSS Light 9.0 is compatible with CML. If you are a student, you can contact Aptech and get a newer version of GAUSS Light for free. I would recommend that.

Finally, there is nothing wrong with being a newbie. 🙂 That is how everybody starts.

0

Thank you so much 🙂 I really appreciate your help and support.

Cheers!


You must login to post answers.

Have a Specific Question?

Get a real answer from a real person

Need Support?

Get help from our friendly experts.