Difference between revisions of "Support:Bugs and solutions"

From COMKAT wiki
Jump to navigation Jump to search
 
(35 intermediate revisions by 17 users not shown)
Line 12: Line 12:
 
##MATLAB version (use commands 'ver' and 'mexext' in MATLAB)
 
##MATLAB version (use commands 'ver' and 'mexext' in MATLAB)
 
##COMKAT version
 
##COMKAT version
#Copy the following text.
+
#Copy the following text.  
 
<pre>
 
<pre>
 
Bug reported by Xin Li. Email: xli51@jhu.edu
 
Bug reported by Xin Li. Email: xli51@jhu.edu
Line 105: Line 105:
 
====Solution: Capture the revised model object from the returned value====
 
====Solution: Capture the revised model object from the returned value====
 
A common mistake is that you used a command without assigning the correct output like:  
 
A common mistake is that you used a command without assigning the correct output like:  
<pre>set(cm,'ParameterName',pnames);</pre> But the correct usage is: <pre>cm=set(cm,'ParameterName',pnames);</pre>
+
set(cm,'ParameterName',pnames).  The correct usage is: cm=set(cm,'ParameterName',pnames);.
  
 
====Problem: Using a 64-bit Windows system, I get an '''Invalid MEX-file''' error====
 
====Problem: Using a 64-bit Windows system, I get an '''Invalid MEX-file''' error====
Line 129: Line 129:
 
</pre>
 
</pre>
  
====Solution: Correct the program or download updated version of COMKAT====
+
====Solution: Correct the program or download updated version of COMKAT====
 
Please replace line 18 of COMKAT_R3.1\comkat_GUI\SIME_FDG_8_1sam.m by 'cm = addInput(cm, 'Cp', 1, 0, 'fengInputByPar', 'pfeng'); %"P"-type input'.
 
Please replace line 18 of COMKAT_R3.1\comkat_GUI\SIME_FDG_8_1sam.m by 'cm = addInput(cm, 'Cp', 1, 0, 'fengInputByPar', 'pfeng'); %"P"-type input'.
  
Line 183: Line 183:
 
</pre>
 
</pre>
  
====Solution: Use corrected readASIPro.m====
+
====Solution: Use the updated readASIPro.m====
Click here [[Image:ReadASIPro.m|updated version of ReadASIPro.m]] to get the updated version of readASIPro.m and save it to the 'ImageReadingFunctions\Siemens-CTI microPET' folder.  This updated version will be included in the future releases of COMKAT.
+
Reconstructing images with 2-byte pixels is a somewhat newer capability.  Click here [[Image:ReadASIPro.m|updated version of ReadASIPro.m]] to get the updated version of readASIPro.m and save it to the 'ImageReadingFunctions\Siemens-CTI microPET' folder.  This updated version will be included in the future releases of COMKAT.
  
  
== New bugs waiting for response ==
+
==== Problem:  MATLAB crashes upon  launching COMKAT ====
 
 
=== Problem:  MATLAB crashes upon  launching COMKAT ===
 
  
 
Bug reported by Xin Li  xli51@jhu.edu
 
Bug reported by Xin Li  xli51@jhu.edu
Line 226: Line 224:
 
   [2] mcos.dll:$L96755(0x00cd7864, 3875564, 0, 0x00cd7878) + 134 bytes
 
   [2] mcos.dll:$L96755(0x00cd7864, 3875564, 0, 0x00cd7878) + 134 bytes
 
   [3] mcos.dll:public: virtual class mcos::COSInterfacePtr __thiscall mcos::File::getInterface(unsigned int)const (0x00cd7864, 1, 0x110162e0, 0) + 32 bytes
 
   [3] mcos.dll:public: virtual class mcos::COSInterfacePtr __thiscall mcos::File::getInterface(unsigned int)const (0x00cd7864, 1, 0x110162e0, 0) + 32 bytes
  [4] mcos.dll:public: struct mxArray_tag * __thiscall mcos::File::convertCOSInterfaceFromMatrix(struct mxArray_tag const *)(0x10b69de0, 0x110162e0, 0x00cdac10 "X¬Í", 0x785ecc5b) + 134 bytes
+
...
  [5] mcos.dll:struct mxArray_tag * __cdecl mcosConvertFromMATFileArray(struct mxArray_tag const *,struct mxArray_tag const * *)(0x110162e0, 0x00cd78c8, 0x110162e0, 0x11015260) + 128 bytes
+
</pre>
  [6] mcos.dll:_omLoadOpaque(0x11015260, 0x110162e0, 0x00cd78c8, 0x01c71340 "MCOS") + 24 bytes
+
 
  [7] libmx.dll:int __cdecl miConvertToOpaque(struct miStreamRec_tag *,struct mxArray_tag *,struct mxArray_tag const *,struct mxArray_tag * *)(0x10c70020 "IM", 0x110162e0, 0x00cd8118, 3) + 39 bytes
+
====Solution: Use a newer version of MATLAB====
  [8] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cd8954, 0, 0) + 3220 bytes
+
MATLAB R14SP3 does not run COMKAT correctly.  We recommend MATLAB 2008a.  Older versions of MATLAB may ''mostly'' run COMKAT.
  [9] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cd91a8, 0, 0) + 3797 bytes
+
 
  [10] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cd99fc, 0, 0) + 3797 bytes
+
 
  [11] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cda250, 0, 0) + 4326 bytes
+
====Problem: Aligment of MRI and PET images is inaccurate====
  [12] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cdaaa4, 0, 0) + 3797 bytes
+
Bug reported by Yash Gandhi. Email: ygandhi@buffalo.edu
  [13] libmx.dll:int __cdecl _HandleArrayForStream(struct miStreamRec_tag *,struct miItem_tag *,int,int)(0x10c70020 "IM", 0x00cdab04, 0, 0) + 3797 bytes
+
 
  [14] libmx.dll:_miGetItemData(0x10c70020 "IM", 0x00cdab04, 0xffffffff, 0) + 146 bytes
+
OS: Microsoft Windows 7 Ultimate Edition (64bit)
  [15] libmx.dll:_miGetItem(0x10c70020 "IM", 0x00cdab34, 128, 14) + 263 bytes
+
 
  [16] libmat.dll:struct mxArray_tag * __cdecl matGetValueAtOffset(struct MATFile_tag *,char *,int)(0x10b8f120, 0x10e03630, 128, 0x00cdab68) + 49 bytes
+
MATLAB: MATLAB Compiler Runtime v78 (MCR)
  [17] libmat.dll:struct mxArray_tag * __cdecl matGetVariable5(struct MATFile_tag *,char const *)(0x10b8f120, 0x10e03634 "hgS_070000", 0x00cdac1c "d¬Í", 0x78937585) + 40 bytes
+
 
  [18] libmat.dll:_matGetVariable(0x10b8f120, 0x10e03634 "hgS_070000", 0, 0x10e01efc) + 24 bytes
+
COMKAT: Standalone version 3,2
  [19] m_interpreter.dll:void __cdecl inLoadFcnPrivate(char const *,int,char * *,bool,int,int,class LoadDestination *)(0x00cdad64 "D:\Software\Kinetic Model\COMKAT..", 0, 0x00cdac9c, 0x00cdb500 "x¶Í") + 709 bytes
+
 
  [20] m_interpreter.dll:_inLoadFcnWithLHS(0x00cdad64 "D:\Software\Kinetic Model\COMKAT..", 0, 0x00cdac9c, 1) + 154 bytes
+
Bug description:  
  [21] m_interpreter.dll:_inFullLoadFcn(1, 0x00cdb558, 2, 0x00cdb5b8) + 873 bytes
+
Alignment of MRI and PET dataset is not accurate. The MRI dataset resolution is better than the PET dataset. As a result when the two images are aligned, the MRI dataset is bigger than the PET dataset and if I use the MRI dataset as a reference to draw a region of interest, the time activity curve obtained is incorrect. I have attached an image of the alignment and a region of interest and the time activity curve obtained using the mri dataset and another one using the pet dataset. The two tac's are significantly different. Is there a way to match the resolutions of the two datasets? Also, the MRI dataset is for the entire animal but only part of the image is displayed on the screen.
  [22] m_dispatcher.dll:public: virtual void __thiscall Mfh_builtin<struct mxArray_tag>::dispatch_mf(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdb558, 2, 0x00cdb5b8) + 55 bytes
+
 
  [23] m_dispatcher.dll:public: virtual void __thiscall Mfh_MATLAB_fn::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdb558, 2, 0x00cdb5b8) + 200 bytes
+
 
  [24] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(313, 0x0fe13c48 "load", 1, 0x00cdb558) + 88 bytes
+
Attachment(optional):
  [25] m_interpreter.dll:_inDispatchFromStack(0, 0x0fe13c48 "load", 1, 2) + 800 bytes
+
 
  [26] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x0fe13c48 "load", 0, 1, 2) + 145 bytes
+
Additional contact information (optional):
  [27] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 1746, 43, 0) + 2534 bytes
+
 
  [28] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 1746, 39, 0) + 282 bytes
+
 
  [29] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0x0e585420, 0, 2, 0x00cdbd40) + 724 bytes
+
====Solution: Fix the information in the image files====
  [30] m_interpreter.dll:_inWordsj(2, 0x00cdbce0, 2, 0x00cdbd40) + 443 bytes
+
Yash Gandhi sent Muzic the images.
  [31] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(2, 0x00cdbce0, 2, 0x00cdbd40) + 164 bytes
+
 
  [32] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 2, 0x00cdbce0, 2) + 28 bytes
+
The image files had incorrect values of the pixel size (spacing)
  [33] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(2, 0x00cdbce0, 2, 0x00cdbd40) + 26 bytes
+
 
  [34] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(2, 0x00cdbce0, 2, 0x00cdbd40) + 271 bytes
+
COMKAT uses such size information to determine how to interpolate the data sets to achieve a common number of mm of anatomy per screen pixel.
  [35] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(610, 0x01d04f2c "hgload", 2, 0x00cdbce0) + 88 bytes
+
When this information is incorrect, the size of the subject (number of screen pixels) will be inconsistent between images.
  [36] m_interpreter.dll:_inDispatchFromStack(610, 0x01d04f2c "hgload", 2, 2) + 800 bytes
+
 
  [37] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x01d04f2c "hgload", 610, 2, 2) + 145 bytes
+
 
  [38] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 1231, 85, 0) + 2534 bytes
+
====Problem: COMKAT crashes when attempting to save results into Excel ====
  [39] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 1231, 34, 0) + 282 bytes
+
 
  [40] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0x0e580020, 0, 3, 0x00cdc3d0) + 724 bytes
+
Bug reported by Jon Price. Email: jonathan.price@icr.ac.uk 
  [41] m_interpreter.dll:_inWordsj(1, 0x00cdc340, 3, 0x00cdc3d0) + 443 bytes
+
 
  [42] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(1, 0x00cdc340, 3, 0x00cdc3d0) + 164 bytes
+
OS: Mac OS X El Capitan V 10.11.6 (64bit)
  [43] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 1, 0x00cdc340, 3) + 28 bytes
+
 
  [44] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdc340, 3, 0x00cdc3d0) + 26 bytes
+
MATLAB: MATLAB Version 9.0.0.341360 (R2016a)
  [45] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdc340, 3, 0x00cdc3d0) + 271 bytes
+
 
  [46] m_interpreter.dll:void __cdecl mdCallFunction(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn *)(1, 0x00cdc340, 3, 0x00cdc3d0) + 56 bytes
+
COMKAT: R4.1a 
  [47] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00cdc340, 3, 0x00cdc3d0) + 94 bytes
+
 
  [48] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(1, 1, 0x0fcfd820, 0) + 947 bytes
+
Bug description: Estimation report not being exported
  [49] m_interpreter.dll:bool __cdecl inResolveMFunctionCall(struct _m_function_desc *,int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *,enum inMarshalType *,unsigned int,int,unsigned int const *,int)(0x0f833488, 1, 1, 0x0fcfd820) + 150 bytes
+
 
  [50] m_interpreter.dll:bool __cdecl accelMFunctionCall(struct _accelOp *,struct _accelOp * *,int *,enum inMarshalType *)(0x0e550bf0, 0x00cdc998, 0x00cdc984, 0x00cdcb24) + 161 bytes
+
After fitting of my data, I try saving the estimation report (File --> Export Estimation Report) but there is no file saved. MATLAB reports the following:
  [51] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00cdcb24, 0x00cdcd60, 0x00cdcb38 "pÌÍ", 0x787683d1) + 21152 bytes
+
 
  [52] m_interpreter.dll:int __cdecl inAccel(class accelCode *,enum inMarshalType *,int *)(0x0f717260, 0x00cdcb24, 0x00cdcd60, 0x00cdcd60) + 19 bytes
+
Error using actxserver (line 90)
  [53] m_interpreter.dll:bool __cdecl inExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00cdcbc8, 0x00cdcc84, 0x00cdcc34, 0x00cdcd60) + 1585 bytes
+
Server creation failed. Invalid ProgID 'Excel.Application'.
  [54] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 157, 216, 0) + 287 bytes
+
 
  [55] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 157, 211, 0) + 282 bytes
+
Error in xlsheets (line 77)
  [56] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0x0e5801e0, 0, 2, 0x00cdd108) + 724 bytes
+
Excel = actxserver('Excel.Application');
  [57] m_interpreter.dll:_inWordsj(1, 0x00cdd078, 2, 0x00cdd108) + 443 bytes
+
 
  [58] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(1, 0x00cdd078, 2, 0x00cdd108) + 164 bytes
+
 
  [59] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 1, 0x00cdd078, 2) + 28 bytes
+
Error in main_GUI>file_save_report_Callback (line 4054)
  [60] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdd078, 2, 0x00cdd108) + 26 bytes
+
            xlsheets({'Estimation results','Estimation stats','Method
  [61] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cdd078, 2, 0x00cdd108) + 271 bytes
+
            summary','Residual'},strcat(pathname,filename));
  [62] m_interpreter.dll:void __cdecl mdCallFunction(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn *)(1, 0x00cdd078, 2, 0x00cdd108) + 56 bytes
+
 
  [63] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00cdd078, 2, 0x00cdd108) + 94 bytes
+
 
  [64] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(1, 1, 0x0fcff3a0, 0) + 947 bytes
+
Error in gui_mainfcn (line 95)
  [65] m_interpreter.dll:bool __cdecl inResolveMFunctionCall(struct _m_function_desc *,int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *,enum inMarshalType *,unsigned int,int,unsigned int const *,int)(0x0fa893c8, 1, 1, 0x0fcff3a0) + 150 bytes
+
        feval(varargin{:});
  [66] m_interpreter.dll:bool __cdecl accelMFunctionCall(struct _accelOp *,struct _accelOp * *,int *,enum inMarshalType *)(0x0fc5ef60, 0x00cdd6d0, 0x00cdd6bc, 0x00cdd85c) + 161 bytes
+
 
  [67] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00cdd85c, 0x00cdda98, 0x00cdd870 "¨ÙÍ", 0x787683d1) + 21152 bytes
+
Error in main_GUI (line 67)
  [68] m_interpreter.dll:int __cdecl inAccel(class accelCode *,enum inMarshalType *,int *)(0x0f717570, 0x00cdd85c, 0x00cdda98, 0x00cdda98) + 19 bytes
+
    gui_mainfcn(gui_State, varargin{:});
  [69] m_interpreter.dll:bool __cdecl inExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00cdd900, 0x00cdd9bc, 0x00cdd96c, 0x00cdda98) + 1585 bytes
+
 
  [70] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 2259, 77, 0) + 287 bytes
+
 
  [71] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 2259, 37, 0) + 282 bytes
+
Error in
  [72] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0x0e3b1fa0, 0, 1, 0x00cddf38) + 724 bytes
+
loadProjectData>@(hObject,eventdata)main_GUI('file_save_report_Callback',hObject,eventdata,guidata(hObject))  
  [73] m_interpreter.dll:_inWordsj(0, 0x00cdded8, 1, 0x00cddf38) + 443 bytes
+
Error while evaluating Menu Callback
  [74] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(0, 0x00cdded8, 1, 0x00cddf38) + 164 bytes
+
 
  [75] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00cdded8, 1) + 28 bytes
+
I would like to be able to view the errors on the fitted parameters.
  [76] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00cdded8, 1, 0x00cddf38) + 26 bytes
+
 
  [77] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00cdded8, 1, 0x00cddf38) + 271 bytes
+
Many thanks
  [78] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(517, 0x0e3a9f90 "gui_mainfcn", 0, 0x00cdded8) + 88 bytes
+
 
  [79] m_interpreter.dll:_inDispatchFromStack(517, 0x0e3a9f90 "gui_mainfcn", 0, 0x01ffffff) + 800 bytes
+
====Solution: Please use Windows====
  [80] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x0e3a9f90 "gui_mainfcn", 517, 0, 0xffffffff) + 145 bytes
+
This feature is not supported on Mac OS.  At the moment we have little active development on Mac OS.  Perhaps a member of the COMKAT community could implement a solution for Mac OS.  
  [81] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 251, 59, 0) + 2534 bytes
+
 
  [82] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 251, 45, 0) + 282 bytes
+
 
  [83] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0x0e3b0560, 0, 0, 0x00cde6c0) + 724 bytes
+
====Problem: COMKAT model drawer gene errors====
  [84] m_interpreter.dll:_inWordsj(0, 0x00cde660, 0, 0x00cde6c0) + 443 bytes
+
Bug reported by Jon Price. Email: jonathan.price@icr.ac.uk 
  [85] m_interpreter.dll:public: void __thiscall Mfh_mp::inRunMP(int,struct mxArray_tag * *,int,struct mxArray_tag * *,struct inWorkSpace_tag *)(0, 0x00cde660, 0, 0x00cde6c0) + 164 bytes
+
 
  [86] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00cde660, 0) + 28 bytes
+
OS: Mac OS X El Capitan V 10.11.6 (64bit)
  [87] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00cde660, 0, 0x00cde6c0) + 26 bytes
+
 
  [88] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00cde660, 0, 0x00cde6c0) + 271 bytes
+
MATLAB: MATLAB Version 9.0.0.341360 (R2016a)
  [89] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(509, 0x10d5e5b4 "main_GUI", 0, 0x00cde660) + 88 bytes
+
 
  [90] m_interpreter.dll:_inDispatchFromStack(509, 0x10d5e5b4 "main_GUI", 0, 0) + 800 bytes
+
COMKAT: R4.1a
  [91] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x10d5e5b4 "main_GUI", 509, 0, 0) + 145 bytes
+
 
  [92] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(2, 0, 0, 0) + 2534 bytes
+
Bug description: Error in scan time in Model drawer Gene
  [93] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(2, 0, 0, 0) + 282 bytes
+
 
  [94] m_interpreter.dll:_inInterPcode(2, 0x784d6e7c, 0, 0) + 81 bytes
+
I would like to use the Model drawer Gene to create a new model. I have followed the steps in the Gene and used the typical parameters suggested (http://comkat.case.edu/index.php?title=Support%3ADocuments%3AManual%3ACOMKAT_GUI#Customizing_COMKAT_GUI). However when I specify the outputs I get the error message "Bad Scan time. Error in evaluating scan time. Undefined function 'functions' for input arguments of type 'double' ". I have tried other time values but get the same error.
  [95] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0x00cdf278, 0x00cdf370, 2, 1) + 153 bytes
+
 
  [96] m_interpreter.dll:$L74683(0x784d6e7c, 0x0e3a0020 "main_GUI\n", 0, 0) + 184 bytes
+
Many thanks for your help.
  [97] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x0e3a0020 "main_GUI\n", 0, 2, 0x00cdf3bc "DôÍ") + 69 bytes
+
 
  [98] m_interpreter.dll:_inEvalCmdNoEnd(0x0e3a0020 "main_GUI\n", 1, 255, 0) + 16 bytes
+
Jon
  [99] bridge.dll:enum inExecutionStatus __cdecl ThrowSignal(char const *)(0x0e3a0020 "main_GUI\n", 0x7c80b741, 0x01207530, 0x01207530) + 60 bytes
+
 
  [100] bridge.dll:$L86781(0, 0, 0x784d6e58, 0x7c36b71f) + 432 bytes
+
Attachment(optional):
  [101] mcr.dll:public: void __thiscall mcrInstance::mnParser(void)(271289, 0x505c3a44, 0x72676f72, 0x46206d61) + 93 bytes
+
 
  [102] MATLAB.exe:0x00401ca9(4194304, 0, 271289, 0x01207530)
+
Additional contact information (optional):
  [103] MATLAB.exe:0x00403d9f(3735608, 3604534, 0x7ffdf000, 0x8054b6b8)
+
 
  [104] kernel32.dll:0x7c817077(0x00403c1a, 0, 0, 0)
+
====Solution: Fix some compatible issues for the new MABLAB version====
 +
Some compatible issues were found for the model drawer generator.  
 +
We have fixed the problems and posted the updated COMKAT versions for Windows (R4.2a) and Mac (R4.1a) on the COMKAT wiki.
 +
 
 +
 
 +
 
 +
== New bugs waiting for response ==
 +
 
 +
Bug reported by Lauren Watkins. Email: lewatkin@stanford.edu
 +
 
 +
OS: Mac OS X  Version: 10.14.3 Build: 18D42 (64bit)
 +
 
 +
MATLAB: MATLAB Version: 9.5.0.1033004 (R2018b) Update 2  
 +
 
 +
COMKAT: R3.2
 +
 
 +
Bug description:  
 +
 
 +
**Bug #1: I am having trouble running the validation suite after re-starting Matlab. The GUI appears but all validation functions except Hallelujah give the same error message:
 +
 
 +
Error: File: setfield.m Line: 29 Column: 7
 +
"i" previously appeared to be used as a function or command, conflicting with its use here as the name of a
 +
variable.
 +
A possible cause of this error is that you forgot to initialize the variable, or you have initialized it implicitly
 +
using load or eval.
 +
 
 +
Error in setopt (line 43)
 +
    optsStruct = setfield(optsStruct, varargin{i}, varargin{i+1});
 +
 
 +
Error in compartmentModel/set (line 188)
 +
      value = setopt(value, 'Jacobian', 'on'); % always require analytic jacobian
 +
 
 +
Error in validateReceptor>LRModel (line 988)
 +
    cm = set(cm, 'SolverOptions', solver_options.options);
 +
 
 +
Error in validateReceptor (line 58)
 +
    cmLR = LRModel(rtol, atol);
 +
 +
Error while evaluating UIControl Callback.
 +
 
 +
 
 +
**Bug #2: Error when running makefile.m to try to address errors as recommended in step 6 of Howtoinstall.txt. This error appeared (below), even after I typed pcode into the Matlab command window and tried again to run makefile.m:
 +
 
 +
The P-code file /Users/lewat/Documents/COMKAT_R3.2/utilities/compileHidden.p was generated prior to MATLAB version
 +
7.5 (R2007b) and is no longer supported. Use pcode to regenerate the file using MATLAB R2007b or later.
 +
 
 +
Error in makefile (line 34)
 +
compileHidden;
  
Please follow these steps in reporting this problem to The MathWorks so
+
Attachment(optional): NA
that we have the best chance of correcting it:
 
  
  1. Send this crash report to segv@mathworks.com for automated analysis.
+
Additional contact information (optional): NA
    For your convenience, this information has been recorded in:
 
      C:\DOCUME~1\Abigale\LOCALS~1\Temp\matlab_crash_dump.2292
 
  
  2. Also, if the problem is reproducible, send the crash report to
 
    support@mathworks.com along with:
 
      - A specific list of steps that will reproduce the problem
 
      - Any M, MEX, MDL or other files required to reproduce the problem
 
      - Any error messages displayed to the command window
 
    A technical support engineer will contact you with further information.
 
  
Thank you for your assistance.  Please save your workspace and restart
 
MATLAB before continuing your work.
 
  
Error in ==> gui_mainfcn>local_openfig at 216
+
=== Problem:  GUI 'Estimate' button returns error ===
    gui_hFigure = openfig(name, singleton, 'auto');
 
  
Error in ==> gui_mainfcn at 94
+
Bug reported by Kathleen Francis. Email: knf2@rice.edu
        gui_hFigure = local_openfig(gui_State.gui_Name, gui_SingletonOpt);           
 
  
Error in ==> main_GUI at 59
+
OS: Microsoft Windows 8.1 (64-bit)
 +
 
 +
MATLAB: MATLAB Version: 8.1.0.604 (R2013a)
 +
 
 +
COMKAT: R4.0a
 +
 
 +
Bug description:
 +
I've tried using the COMKAT GUI to estimate parameters for an FDG two-tissue-compartment model, using my data sets for inputs and outputs. When I press the 'Estimate' button on the GUI, I get the following error:
 +
 
 +
Error using snls (line 48)
 +
Objective function is returning undefined values at initial point. lsqcurvefit cannot continue.
 +
 
 +
Error in lsqncommon (line 150)
 +
    [xC,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msgData]=...
 +
 
 +
Error in lsqcurvefit (line 253)
 +
[xCurrent,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...
 +
 
 +
Error in compartmentModel/fit (line 156)
 +
  [newParmVal,resnorm,residual,exitFlag,output,lambda,jacobian] = lsqcurvefit('fitfunc', initParmVal, [], data, lb, ub, ...
 +
 
 +
Error in main_GUI>fitCompartment_Callback (line 2480)
 +
[pfit modelFit] = fit(cm, pinit, lb, ub);
 +
 
 +
Error in gui_mainfcn (line 96)
 +
        feval(varargin{:});
 +
 
 +
Error in main_GUI (line 67)
 
     gui_mainfcn(gui_State, varargin{:});
 
     gui_mainfcn(gui_State, varargin{:});
 +
 +
Error in guidemfile/@(hObject,eventdata)main_GUI('fitCompartment_Callback',hObject,eventdata,guidata(hObject))
 +
 +
 +
Error while evaluating uicontrol Callback
 +
 +
 +
I have tried using different data sets, as well as using the Feng input, but always get the same error.
 +
 +
 +
I also get the following warning when I select the input data set:
 +
 +
Warning: The input to STR2FUNC "C:\Users\Kathleen\Desktop\Research Data\FDG\Exported Data\RCA1_15d_FDG_heart_COMKAT_DATA.csv" is
 +
not a valid function name. This will generate an error in a future release.
 +
> In loadTimeConcFromFile at 75
 +
  In input2>WBFile1Browse_Callback at 1666
 +
  In gui_mainfcn at 96
 +
  In input2 at 59
 +
  In guidemfile>@(hObject,eventdata)input2('WBFile1Browse_Callback',hObject,eventdata,guidata(hObject))
 +
  In uiwait at 82
 +
  In input2>input2_OpeningFcn at 305
 +
  In gui_mainfcn at 221
 +
  In input2 at 57
 +
  In main_GUI>getInputData_Callback at 1719
 +
  In gui_mainfcn at 96
 +
  In main_GUI at 67
 +
  In guidemfile>@(hObject,eventdata)main_GUI('getInputData_Callback',hObject,eventdata,guidata(hObject))
 +
 +
 +
I think this might be the source of the error, but I don't know how I could fix it, or why it would not normally be a problem.
 +
 +
 +
Additional contact information (optional):
 +
 +
 +
 +
 +
=== Problem:  Validation/Makefile problem ===
 +
Enter bug description here
 +
 +
<pre>
 +
Bug reported by Kevin. Email: kleu@mednet.ucla.edu
 +
 +
OS: Mac OS X Version 10.6.8 (32bit)
 +
 +
MATLAB: MATLAB Version 7.14.0.739 (R2012a)
 +
 +
COMKAT: R3.2
 +
 +
Bug description:
 +
 +
Tried running the validation suite, but got the following message: Undefined function 'pxEval' for input arguments of type 'compartmentModel'. I then tried to use makefile and got the following message:
 +
 +
Warning: The P-code file compileHidden.p was generated prior to MATLAB version 7.5 (R2007b) and will not be supported in a future
 +
release.  Use pcode to regenerate compileHidden.p using MATLAB R2007b or later.
 +
> In makefile at 34
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:190:20: error: malloc.h: No such file or directory
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c: In function 'setup':
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:825: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1117: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1153: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1231: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1288: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1329: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1411: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1534: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1632: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c: In function 'mexFunction':
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3252: warning: cast from pointer to integer of different size
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3438: warning: assignment discards qualifiers from pointer target type
 +
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3471: warning: format '%d' expects type 'int', but argument 7 has type 'long int'
 +
 +
    mex: compile of ' "/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c"' failed.
 +
 +
Undefined function or variable 'ME'.
 +
 +
Error in /DATA/COMKAT_R3/utilities/compileHidden.p>compileHidden (line 23)
 +
 +
 +
Error in makefile (line 34)
 +
compileHidden;
 +
 +
Attachment(optional):
 +
 +
Additional contact information (optional):
 
</pre>
 
</pre>

Latest revision as of 06:40, 22 February 2019

How this system works

  1. If you encounter an error, please read the 'Known bugs and solutions' section below to find if this error has been reported and solved. If not, please report this bug in the 'Report new bugs' section.
  2. As this page is being 'watched' by COMKAT developers, any changes to this page will trigger the wiki to send us an e-mail notifying us of the new bug report.
  3. Then we will look at the bug report, provide an answer and solution and reply to the user who reported it via e-mail.
  4. Once this bug is resolved, we will move the report from the 'Report new bugs' section to the 'Known bugs and solutions' section.

NOTE: This page will not contain the bug reports for the previous releases of COMKAT if this bug has been resolved in the new version.

How to submit a bug report

  1. Search to see if this bug has been reported previously. Use the wiki search functions at the top of this page.
  2. Get the following information of your system:
    1. Operating system (and whether it's a 64-bit system with the MATLAB command 'computer')
    2. MATLAB version (use commands 'ver' and 'mexext' in MATLAB)
    3. COMKAT version
  3. Copy the following text.
Bug reported by Xin Li. Email: xli51@jhu.edu

OS: Microsoft Windows XP Version 5.1 (Build 2600: Service Pack 3) (32bit)

MATLAB: MATLAB Version 7.1.0.246 (R14) Service Pack 3

COMKAT: R3.2

Bug description: 
When using the 'analyzeFit', there is always error information below. 
??? Error using ==> mtimes
Inner matrix dimensions must agree.
Error in ==> compartmentModel.analyzeFit at 34
if (abs(Jot'*d) > 0.1* abs(d.'*A*d)),

But when I try to run the following code in the 'analyzeFit' function separately, it works.

fjac = full(jac);
[uu,ss,vv]=svd(fjac'*fjac); % jac is to include weighting
covar = vv*diag(1./diag(ss))*uu';
corr = covar./(sqrt(diag(covar)) * sqrt(diag(covar))');
sdev = sqrt(diag(covar));

% rfm2 20021212 added test for gradient
% covariance matrix is calculated assuming gradient is "small".  test this 
d = 0.005*pfit(:) + 1e-10;  % small pertubation to parameter estimate
Jot = fjac'*residual(:);
A = fjac'*fjac;  % approximate Hessian
if (abs(Jot'*d) > 0.1* abs(d.'*A*d)),
    fprintf(['analyzeFit: Covariance matrix estimate is not valid because gradient is ' ...
        'too large.  \nTry fitting again but with more stringent convergence tolerance.\n']);
end


Attachment(optional):

Additional contact information (optional):

4. Then click 'Edit' (in the footer) near the bottom of this page. (You must be logged in to edit.)
5. Paste the text into the edit box under '== New bugs waiting for response =='.
6. Edit the pasted text according to the bug you found.
7. When finished click 'Save page'. You may also include attachments such as .mat or .m files.

Go to Support:Detailed tutorial on bug report for a more detailed step-by-step instruction with pictures.


Known bugs and solutions

Download and installation

Problem: Cannot download COMKAT

When I clicked the link to COMKAT download, the download did not start and I got a 'HTTP 403 Forbidden' error message.

Solution: Log in before you download the COMKAT files.

The COMKAT web server requires you to register and log in before you download the COMKAT files.

Problem: fdgcmd.m in the examples folder crashes with an error

The fitting function in the example fdgcmd.m returns this error

fdgcmd('INVERSE') plotOption = 1 ??? Input argument "cm" is undefined. 
Error in ==> fitfunc at 54 parmToChange = get(cm, 'SensitivityName'); 
Error in ==> optim\private\snls at 423 [newfvec,newA] = feval(funfcn{3},xargin{:},varargin{:}); 
Error in ==> optim\private\lsqncommon at 220 [x,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msg]=... 
Error in ==> lsqcurvefit at 174 [x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ... 
Error in ==> compartmentModel.fit at 145 [newParmVal,resnorm,residual,exitFlag,output,lambda,jacobian] = lsqcurvefit('fitfunc', initParmVal, [], data, lb, ub, ...
Error in ==> fdgcmd at 208 pfit = fit(cm, pinit, lb, ub);


Solution: 'lsqcurvefit' was changed in MATLAB 2006a

This error arises because the newer MATLAB function

lsqcurvefit

has a different argument passing. In MATLAB version earlier than R2006, the lsqcommon passes an extra argument which is empty. That is why there is an unused argument

fitfunc.m

. However, this is fixed in R2006a and later so now the cm is passed as "unused". If you are using MATLAB 2006a or later, to solve this problem as a workaround, edit the

fitfunc.m

and insert the following lines in line 38: if nargin<3 cm=unused; end

Problem: Parameter estimates obtained using two different computers are different

I use two computers, one xp sp1 with MATLAB v7 sp1, the other is sp2. The estimated value from both computers are different. I have checked many times that I use the same data. Would it be possible to happen?

Solution: This behavior is to be expected

The default optimizer of COMKAT is lsqcurvefit. As it is a function of the MATLAB optimization toolbox, in different versions of MATLAB the fitting results may differ. So the fitted values could be slightly different under different service packs. However, the optimizer

LMWLS

is a function of COMKAT so it will not change in different MATLAB versions. So if you use this optimizer you are more likely to get identical parameter estimates regardless the MATLAB version. On the other hand, there may be platform differences that cause numeric roundoff to be different and this could impact parameter estimates so small differences in estimates are not unexpected.

Problem: Undefined command/function 'pxEval'

I just downloaded and attempted to install the latest version of COMKAT. When attempting to validate the first calculation, I get the following error message:

??? Undefined command/function 'pxEval'.

Solution: MATLAB 7 does not recognize the 'mexwin32' file extension

This error was generated because MATLAB 7 does not recognize the 'mexwin32' extension. We have fixed this issue by updating the COMKAT_R3.zip file. Please download and re-install it again. Or you may manually fix this by searching for all '.mexwin32' files and change their extension to '.dll'.

COMKAT command line functions

Problem: When I set a property of a compartment model, the property does not get changed

When I tried to set a certain property of COMKAT compartment model, why wasn't the property changed?

Solution: Capture the revised model object from the returned value

A common mistake is that you used a command without assigning the correct output like: set(cm,'ParameterName',pnames). The correct usage is: cm=set(cm,'ParameterName',pnames);.

Problem: Using a 64-bit Windows system, I get an Invalid MEX-file error

Under the 64-bit Windows system, when doing curve fitting I get the following error message:

Invalid MEX-file

Solution: 64-bit MATLAB does not install Visual C++ library that is required

This problem is caused by the fact that, when you install 64-bit MATLAB, it does not automatically install the Visual C re-distributable for you. But for 32-bit MATLAB it does. Since we compile our mex files using Visual Studio 2008, you will have to install the Visual Studio 2008 re-distributable in order to run the mex files.
Please go to Microsoft website: http://www.microsoft.com/downloads/details.aspx?familyid=bd2a6171-e2d6-4230-b809-9a8d7548c1b6&displaylang=en to download and install the re-distributables. If the link is broken, google Microsoft Visual C++ 2008 Redistributable Package x64.

COMKAT GUI

Problem: 'Return to GUI' button is missing

Main_GUI -> Model drawer -> I cannot find the 'Return to GUI' button when using the Model drawer.

Solution: Be sure to do all steps to run this

You have to implement every step including 'check model compatibility' and 'Return to GUI' will be enabled.

Problem: Using the 'one sample' with 'Inputest' tool causes an error

When launching the estimate process with 'Use one sample' I obtain the following error message :

 cvodesGenmod5:Error. Function fengInput does not exist??? 
??? Error using ==> fmincon at 517 
FMINCON cannot continue because user supplied objective function failed with the following error: 
Error using ==> cvodesGenmod5 cvodesGenmod5: Error.  Problem in evalInput.  Error status=1

Solution: Correct the program or download updated version of COMKAT

Please replace line 18 of COMKAT_R3.1\comkat_GUI\SIME_FDG_8_1sam.m by 'cm = addInput(cm, 'Cp', 1, 0, 'fengInputByPar', 'pfeng'); %"P"-type input'.

COMKAT Image Tool

Problem: When I try to create and name a new VOI, I get an error

get the following error when I try to create and name a new VOI:
??? Undefined function or variable 'name'. 
Error in ==> VOI.VOI at 16
out.name = name;  % what user calls the region


Solution: Correct program or download updated version of COMKAT

This is identified as a COMKAT bug. It will be fixed in the next release. For the workaround, edit line 16 of COMKATROOT/@VOI/VOI.m and make it:

out.name = varargin{1};

Miscellaneous

Problem: Cannot run Glucose Minimal Model from Validation Suite

When launching the validation process 'Glucose Minimal Model', I obtain the following error message:

Kinetic function kinGMM is missing.

Solution: Add the folder 'examples' to your MATLAB path

Please add the folder 'examples' under COMKAT root folder into your MATLAB path. This bug will be fixed in a recent COMKAT revision.

Problem: uitable errors

When running under deployed mode, uitable generates errors for missing functions 'arrayviewfunc'

Solution: Get an updated version of MATLAB or use the MATHWORKS solution

Refer to MATLAB website http://www.mathworks.cn/support/bugreports/details.html?rp=449936 for solution. This bug has been fixed in MATLAB R2008b and later. This bug does not appear under MATLAB.

Problem: Trouble reading in 2-byte integer micro PET data

Bug reported by Landon Locke. Email: Landon25@virginia.edu OS: Microsoft Windows XP Version 5.1 (Build 2600: Service Pack 2) MATLAB: MATLAB Version 7.7.0.471 (R2008b) COMKAT: R3.2

Bug description: When I try to load in a PET image data set that is 4-byte integer using readASPIRo, the code works fine. If the PET data was reconstructed as 2-byte integer, then the code fails and the following error is displayed in MATLAB:

??? Error using ==> reshape To RESHAPE the number of elements must not change.

Error in ==> readASIPro>readSegsFrames at 622

       fileData = reshape(fileData, [sz(1:3)] );

Error in ==> readASIPro>getPixelData at 508

           [data, segidx, subheader_out] = readSegsFrames(fid, sz, 'int16',
           frame, segment, delta, outputformat, subheader);

Error in ==> readASIPro at 391

           [data, si, sh_out] = getPixelData(fs_data, mh.data_type, sz, frame,
           segment, [], outputformat, sh);

Solution: Use the updated readASIPro.m

Reconstructing images with 2-byte pixels is a somewhat newer capability. Click here File:ReadASIPro.m to get the updated version of readASIPro.m and save it to the 'ImageReadingFunctions\Siemens-CTI microPET' folder. This updated version will be included in the future releases of COMKAT.


Problem: MATLAB crashes upon launching COMKAT

Bug reported by Xin Li xli51@jhu.edu

OS: Microsoft windows XP, PCWIN

MATLAB: MATLAB Version Version 7.1

COMKAT: COMKAT R3.2

Bug description: When launching COMKAT I obtain the following error message:

------------------------------------------------------------------------
       Segmentation violation detected at Mon Jun 08 17:34:57 2009
------------------------------------------------------------------------

Configuration:
  MATLAB Version:   7.1.0.246 (R14) Service Pack 3
  MATLAB License:   162077
  Operating System: Microsoft Windows XP
  Window System:    Version 5.1 (Build 2600: Service Pack 3)
  Processor ID:     x86 Family 15 Model 2 Stepping 7, GenuineIntel
  Virtual Machine:  Java 1.5.0 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
  Default Charset:  windows-1252

Register State:
  EAX = dd000000  EBX = dd000000
  ECX = 00cd7754  EDX = 785f284c
  ESI = 012f2e10  EDI = 0f6d8520
  EBP = 00cd777c  ESP = 00cd7754
  EIP = 78751031  FLG = 00010286

Stack Trace:
  [0] m_interpreter.dll:public: virtual void __thiscall FunctionHandleWorkspaceCI::customLoad(class mcos::COSInterfacePtr,class mcos::COSValue,class mcos::COSDataTypePtr)(0x11295f00, 0x11016d20, 0x113f9a20, 0x003c4b20 "Ô._x´._x") + 401 bytes
  [1] mcos.dll:public: virtual void __thiscall mcos::COSClassI::customLoad(class mcos::COSInterfacePtr,class mcos::COSValue,class mcos::COSDataTypePtr)(0x11295f00, 0x11016d20, 0x00cd7784, 0x003c4b20 "Ô._x´._x") + 102 bytes
  [2] mcos.dll:$L96755(0x00cd7864, 3875564, 0, 0x00cd7878) + 134 bytes
  [3] mcos.dll:public: virtual class mcos::COSInterfacePtr __thiscall mcos::File::getInterface(unsigned int)const (0x00cd7864, 1, 0x110162e0, 0) + 32 bytes
...

Solution: Use a newer version of MATLAB

MATLAB R14SP3 does not run COMKAT correctly. We recommend MATLAB 2008a. Older versions of MATLAB may mostly run COMKAT.


Problem: Aligment of MRI and PET images is inaccurate

Bug reported by Yash Gandhi. Email: ygandhi@buffalo.edu

OS: Microsoft Windows 7 Ultimate Edition (64bit)

MATLAB: MATLAB Compiler Runtime v78 (MCR)

COMKAT: Standalone version 3,2

Bug description: Alignment of MRI and PET dataset is not accurate. The MRI dataset resolution is better than the PET dataset. As a result when the two images are aligned, the MRI dataset is bigger than the PET dataset and if I use the MRI dataset as a reference to draw a region of interest, the time activity curve obtained is incorrect. I have attached an image of the alignment and a region of interest and the time activity curve obtained using the mri dataset and another one using the pet dataset. The two tac's are significantly different. Is there a way to match the resolutions of the two datasets? Also, the MRI dataset is for the entire animal but only part of the image is displayed on the screen.


Attachment(optional):

Additional contact information (optional):


Solution: Fix the information in the image files

Yash Gandhi sent Muzic the images.

The image files had incorrect values of the pixel size (spacing).

COMKAT uses such size information to determine how to interpolate the data sets to achieve a common number of mm of anatomy per screen pixel. When this information is incorrect, the size of the subject (number of screen pixels) will be inconsistent between images.


Problem: COMKAT crashes when attempting to save results into Excel

Bug reported by Jon Price. Email: jonathan.price@icr.ac.uk

OS: Mac OS X El Capitan V 10.11.6 (64bit)

MATLAB: MATLAB Version 9.0.0.341360 (R2016a)

COMKAT: R4.1a

Bug description: Estimation report not being exported

After fitting of my data, I try saving the estimation report (File --> Export Estimation Report) but there is no file saved. MATLAB reports the following:

Error using actxserver (line 90) Server creation failed. Invalid ProgID 'Excel.Application'.

Error in xlsheets (line 77) Excel = actxserver('Excel.Application');


Error in main_GUI>file_save_report_Callback (line 4054)

           xlsheets({'Estimation results','Estimation stats','Method
           summary','Residual'},strcat(pathname,filename));


Error in gui_mainfcn (line 95)

       feval(varargin{:});

Error in main_GUI (line 67)

   gui_mainfcn(gui_State, varargin{:});


Error in loadProjectData>@(hObject,eventdata)main_GUI('file_save_report_Callback',hObject,eventdata,guidata(hObject)) Error while evaluating Menu Callback

I would like to be able to view the errors on the fitted parameters.

Many thanks

Solution: Please use Windows

This feature is not supported on Mac OS. At the moment we have little active development on Mac OS. Perhaps a member of the COMKAT community could implement a solution for Mac OS.


Problem: COMKAT model drawer gene errors

Bug reported by Jon Price. Email: jonathan.price@icr.ac.uk

OS: Mac OS X El Capitan V 10.11.6 (64bit)

MATLAB: MATLAB Version 9.0.0.341360 (R2016a)

COMKAT: R4.1a

Bug description: Error in scan time in Model drawer Gene

I would like to use the Model drawer Gene to create a new model. I have followed the steps in the Gene and used the typical parameters suggested (http://comkat.case.edu/index.php?title=Support%3ADocuments%3AManual%3ACOMKAT_GUI#Customizing_COMKAT_GUI). However when I specify the outputs I get the error message "Bad Scan time. Error in evaluating scan time. Undefined function 'functions' for input arguments of type 'double' ". I have tried other time values but get the same error.

Many thanks for your help.

Jon

Attachment(optional):

Additional contact information (optional):

Solution: Fix some compatible issues for the new MABLAB version

Some compatible issues were found for the model drawer generator. We have fixed the problems and posted the updated COMKAT versions for Windows (R4.2a) and Mac (R4.1a) on the COMKAT wiki.


New bugs waiting for response

Bug reported by Lauren Watkins. Email: lewatkin@stanford.edu

OS: Mac OS X Version: 10.14.3 Build: 18D42 (64bit)

MATLAB: MATLAB Version: 9.5.0.1033004 (R2018b) Update 2

COMKAT: R3.2

Bug description:

    • Bug #1: I am having trouble running the validation suite after re-starting Matlab. The GUI appears but all validation functions except Hallelujah give the same error message:

Error: File: setfield.m Line: 29 Column: 7 "i" previously appeared to be used as a function or command, conflicting with its use here as the name of a variable. A possible cause of this error is that you forgot to initialize the variable, or you have initialized it implicitly using load or eval.

Error in setopt (line 43)

   optsStruct = setfield(optsStruct, varargin{i}, varargin{i+1});

Error in compartmentModel/set (line 188)

      value = setopt(value, 'Jacobian', 'on'); % always require analytic jacobian

Error in validateReceptor>LRModel (line 988)

   cm = set(cm, 'SolverOptions', solver_options.options);

Error in validateReceptor (line 58)

   cmLR = LRModel(rtol, atol);

Error while evaluating UIControl Callback.


    • Bug #2: Error when running makefile.m to try to address errors as recommended in step 6 of Howtoinstall.txt. This error appeared (below), even after I typed pcode into the Matlab command window and tried again to run makefile.m:

The P-code file /Users/lewat/Documents/COMKAT_R3.2/utilities/compileHidden.p was generated prior to MATLAB version 7.5 (R2007b) and is no longer supported. Use pcode to regenerate the file using MATLAB R2007b or later.

Error in makefile (line 34) compileHidden;

Attachment(optional): NA

Additional contact information (optional): NA


Problem: GUI 'Estimate' button returns error

Bug reported by Kathleen Francis. Email: knf2@rice.edu

OS: Microsoft Windows 8.1 (64-bit)

MATLAB: MATLAB Version: 8.1.0.604 (R2013a)

COMKAT: R4.0a

Bug description: I've tried using the COMKAT GUI to estimate parameters for an FDG two-tissue-compartment model, using my data sets for inputs and outputs. When I press the 'Estimate' button on the GUI, I get the following error:

Error using snls (line 48) Objective function is returning undefined values at initial point. lsqcurvefit cannot continue.

Error in lsqncommon (line 150)

   [xC,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msgData]=...

Error in lsqcurvefit (line 253) [xCurrent,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in compartmentModel/fit (line 156) [newParmVal,resnorm,residual,exitFlag,output,lambda,jacobian] = lsqcurvefit('fitfunc', initParmVal, [], data, lb, ub, ...

Error in main_GUI>fitCompartment_Callback (line 2480) [pfit modelFit] = fit(cm, pinit, lb, ub);

Error in gui_mainfcn (line 96)

       feval(varargin{:});

Error in main_GUI (line 67)

   gui_mainfcn(gui_State, varargin{:});

Error in guidemfile/@(hObject,eventdata)main_GUI('fitCompartment_Callback',hObject,eventdata,guidata(hObject))


Error while evaluating uicontrol Callback


I have tried using different data sets, as well as using the Feng input, but always get the same error.


I also get the following warning when I select the input data set:

Warning: The input to STR2FUNC "C:\Users\Kathleen\Desktop\Research Data\FDG\Exported Data\RCA1_15d_FDG_heart_COMKAT_DATA.csv" is not a valid function name. This will generate an error in a future release. > In loadTimeConcFromFile at 75

 In input2>WBFile1Browse_Callback at 1666
 In gui_mainfcn at 96
 In input2 at 59
 In guidemfile>@(hObject,eventdata)input2('WBFile1Browse_Callback',hObject,eventdata,guidata(hObject))
 In uiwait at 82
 In input2>input2_OpeningFcn at 305
 In gui_mainfcn at 221
 In input2 at 57
 In main_GUI>getInputData_Callback at 1719
 In gui_mainfcn at 96
 In main_GUI at 67
 In guidemfile>@(hObject,eventdata)main_GUI('getInputData_Callback',hObject,eventdata,guidata(hObject)) 


I think this might be the source of the error, but I don't know how I could fix it, or why it would not normally be a problem.


Additional contact information (optional):



Problem: Validation/Makefile problem

Enter bug description here

Bug reported by Kevin. Email: kleu@mednet.ucla.edu

OS: Mac OS X Version 10.6.8 (32bit)

MATLAB: MATLAB Version 7.14.0.739 (R2012a) 

COMKAT: R3.2

Bug description: 

Tried running the validation suite, but got the following message: Undefined function 'pxEval' for input arguments of type 'compartmentModel'. I then tried to use makefile and got the following message:

Warning: The P-code file compileHidden.p was generated prior to MATLAB version 7.5 (R2007b) and will not be supported in a future
release.  Use pcode to regenerate compileHidden.p using MATLAB R2007b or later. 
> In makefile at 34 
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:190:20: error: malloc.h: No such file or directory
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c: In function 'setup':
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:825: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1117: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1153: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1231: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1288: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1329: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1411: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1534: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:1632: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c: In function 'mexFunction':
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3252: warning: cast from pointer to integer of different size
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3438: warning: assignment discards qualifiers from pointer target type
/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c:3471: warning: format '%d' expects type 'int', but argument 7 has type 'long int'

    mex: compile of ' "/private/tmp/tpba7ee21b_f0fa_4bcb_ab5e_77510aafc60b/cvodesGenmod5.c"' failed.

Undefined function or variable 'ME'.

Error in /DATA/COMKAT_R3/utilities/compileHidden.p>compileHidden (line 23)


Error in makefile (line 34)
compileHidden;

Attachment(optional):

Additional contact information (optional):