I have been estimating a discrete choice model using the application MaxLikMT, but have been getting an insufficient memory error, either while calculating the gradient or hessian. Here is the full error:
C:\gauss11\Workingfiles\TestV1(1198) : error G0030 : Insufficient memory Currently active call: lpr  C:\gauss11\Workingfiles\TestV1 Stack trace: lpr called from C:\gauss11\src\maxlikmtutil.src, line 521 maxlikmtgrad called from C:\gauss11\src\maxlikmt.src, line 653 maxlikmt called from C:\gauss11\Workingfiles\TestV1, line 1260
I would appreciate if anyone could suggest on dealing with this memory issue.
Thanks and Regards,
It looks like that line of code is using the threaded version of the gradient calculation which uses more memory. Try turning off the high-level GAUSS threads by setting the maxlikmtcontrol structure member useThreads equal to zero before your call to maxlikmt.
//declare structure struct maxlikmtcontrol c0; //fill in structure with default values c0 = maxlikmtcontrolcreate(); //Add this line to your structure set-up //to turn off threads c0.useThreads = 0;
This should allow your program to run successfully.