

MATLAB のGlobal Optimization Toolbox 内の関数 gamultiobj
を用いてベジェ曲線の制御点を最適化したいと考えています． 最適化する目的関数が流路の圧力損失であるため，流体解析にCOMSOLを用いています．

"ModelUtil.createが解決できません" というエラーメッセージが MATLAB から返ってきます．

ソースコードの一部を抜粋します

[code]

    "main.m"(一部抜粋) 
    〜〜〜〜〜〜〜〜〜 
    gamultiobj(@evaluation,nvars,A,b,Aeq,beq,lb,ub,nonlcon,intcon,options) 
    〜〜〜〜〜〜〜〜〜
    
    "evaluation.m"(一部抜粋) 
    function obj = evaluation(x); %%% x is control point of bezier curve, obj is objective value
    〜〜〜〜〜〜〜〜〜 
    model = ModelUtil.create('Model'); 
    〜〜〜〜〜〜〜〜〜
    
[/code]

パラレルオプションを使用しています．

import com.comsol.model.*  
import com.comsol.model.util.*  
addpath(〜〜/mli)  
は追加しています．  
また，mphstartをparforで行うことでCOMSOL サーバーに接続できていることは別の関数で順解析を行うことにより確認しました．


CC BY-SA 4.0
2023-11-25T15:38:43.737
96912
2023-11-27T11:47:24.403
2023-11-27T11:47:24.403
60535
60535
question
matlab
MATLAB の Global Optimization Toolbox にて COMSOL モデルを使用したい