function out = model % import com.comsol.model.* import com.comsol.model.util.* model = ModelUtil.create('Model'); model.modelPath('H:\COMSOL4.2a\20120717-tape'); model.modelNode.create('mod1'); model.geom.create('geom1', 2); model.geom('geom1').axisymmetric(true); model.mesh.create('mesh1', 'geom1'); model.physics.create('mf', 'InductionCurrents', 'geom1'); model.study.create('std1'); model.study('std1').feature.create('stat', 'Stationary'); %define some parameters model.param.set('Turns', '100'); model.param.set('w0', '0.0001[m]'); model.param.set('h0', '0.005[m]'); model.param.set('Length', '300[m]'); model.param.set('InR', '0.1[m]'); % i is the variable defined to change in the loop for i=2:1 %define some parameters model.param.set('OutR', 'sqrt((Length/i*w0/pi)+InR^2)');% this varies with i model.param.set('CoilWidth', 'OutR-InR'); model.param.set('CoilHeight', 'i*h0');% this varies with i model.param.set('AirWidth', 'OutR+InR'); model.param.set('AirHeight', 'h0*(i+2)');% this varies with i model.geom('geom1').feature.create('r1', 'Rectangle'); model.geom('geom1').feature('r1').setIndex('size', 'CoilWidth', 0); model.geom('geom1').feature('r1').setIndex('size', 'CoilHeight', 1); model.geom('geom1').feature('r1').setIndex('pos', 'InR', 0); model.geom('geom1').run('r1'); % model.geom('geom1').run('r1'); % model.geom('geom1').feature.create('r2', 'Rectangle'); % model.geom('geom1').feature('r2').setIndex('size', 'AirWidth', 0); % model.geom('geom1').feature('r2').setIndex('size', 'AirHeight', 1); % model.geom('geom1').feature('r2').setIndex('pos', '-0.005', 1); % model.geom('geom1').run('r2'); % model.geom('geom1').run('r2'); model.geom('geom1').run; mphgeom(model,'geom1'); end out = model;