КРАТКОЕ ОПИСАНИЕ ЧЕГО Я ХОЧУ: Если я возьму имя файла в качестве аргумента функции, как мне включить это имя файла в местоположение пути, чтобы имя файла находилось в месте пути это один пользователь входит. Если вы не поняли, о чем я говорю, прочтите объяснение ниже:
ВТОРИЧНОЕ ПОЯСНЕНИЕ:
Я делаю общую функцию, которая требует вызова программного обеспечения под названием CMG. Программному обеспечению необходим файл .dat
, имя которого я принимаю в качестве аргумента в функции с общим именем в качестве аргумента ReservoirModel_CMGBuilder
. Как вы можете видеть из приведенного ниже частичного кода, этот файл ReservoirModel_CMGBuilder
хранится в папке, путь к которой я указал. Однако проблема в том, что имя файла в кавычках, поэтому оно не идентифицирует имя файла в коде. Я хочу взять у пользователя имя файла .dat, необходимое для CMG, и сохранить его под именем ReservoirModel_CMGBuilder
, а затем использовать это имя в пути, чтобы подобрать этот файл.
Точно так же я хочу сделать это для Reportq_rwd
и Reportq_rwo
. Как я могу это сделать?
function [q_yearly,Swav_yearly]=q_from_CMG_general(nModel,nCell,T,ReservoirModel_CMGBuilder,poro_models_gslib_file,perm_models_gslib_file,Reportq)
ReservoirModel_CMGBuilder=[ReservoirModel_CMGBuilder '.dat']; % string concatenation
Reportq_rwd=[Reportq '.rwd'];
Reportq_rwo=[Reportq '.rwo'];
poro_models=gslib_file_to_matlab_var(nModel,nCell,poro_models_gslib_file);
perm_models=gslib_file_to_matlab_var(nModel,nCell,perm_models_gslib_file);
%% loop to run all nModel
for model_no=1:nModel
%% Writing the porosity and permeability model one at a time in .inc file, which will be read and will work as input to porosity and permeability models in CMG
dlmwrite('poro_model.inc',poro_models(:,model_no),'delimiter','\n');
dlmwrite('perm_model.inc',perm_models(:,model_no),'delimiter','\n');
%% Prior to driling an exploratory well or acquiring a seismic with just 5 producing wells
%# Calls CMG
system('mx200810.exe -f "C:\Documents and Settings\HSingh2\Desktop\Work\Model - SGEMS, CMG and MATLAB\ReservoirModel_CMGBuilder"') % Calls CMG
%# Calls parameter report file and generates output file
system('report.exe /f Reportq_rwd /o Reportq_rwo')