function []=kraken_env_build(frequency,sp)
% load('实测声速.mat')
% d1=23.5;
% d2=800;
sysd=5;
jd=0.5;
shen=20;
%%%产生kraken环境输入sclant.env文件的函数,输入参数为频率
fid=fopen('sclant.env','w+');%环境文件的名字为sclant.env
title_f='pekeris';%%文件头名称;
fprintf(fid,'%s\n',title_f);%写入第一行环境文件头名称
fprintf(fid,'%f\n',frequency);%写入第二行频率
Ndim=1;%%the number of layer;海水的层数,为了得到海底的信息,所以把海底设为第二层水体-------------------------------------
fprintf(fid,'%d\n',Ndim);%写入第三行水体的层数
parameter1=['''NVW'''];%在env文件中显示为“'NVW'”;N:折射率线性插值(C声速线性插值) ;V:上边界看做真空;W:声吸收单位为db/λ(M为声吸收单位为db/m)
fprintf(fid,'%s\n',parameter1);%写入第四行线性插值,上边界真空,声吸收单位
%%%---------------------------第一层水体------------------------
parameter_water=[1000;0;shen];%第一层水体的 网格数 上界面粗糙度 水深 一个波长内至少有20个点 最低声速1450 最高频2000 一米要设30个点
fprintf(fid,'%d\t%d\t%d\n',parameter_water);%写入第五行 第一层水体的参数 网格数 上边界粗糙度 水深
%%%--第一层水体声速剖面
% ssp=load('average.txt');
z1=[0:1:shen];
c1=sp;%声速
%带有表面声道的深海剖面
% z1=[0 10 20];
% c1=[1505 1510 1500];
% z1=[0 100 200 250 400 600 800 1000 1100 1200 1500 2000 3000 4000];
% c1=[1536 1531 1526 1520 1515 1507 1503 1500 1503 1506 1512.5 1519 1526 1535];
% z1=[0 5 10 15 24 27 28 30 32 35];%浅海声速剖面
% c1=[1528 1527 1526 1526 1526 1508 1500 1499 1498 1498];
% z1=[0 1000 4000];
% c1=[1530 1500 1540];
%%%--第一层水体声速剖面
%%---写入第一层水体的声速剖面
for ii=1:length(z1)
para_water=[z1(ii);c1(ii);0;1.03;0;0];%深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
fprintf(fid,'%5.2f\t%7.2f\t%d\t%d\t%d\t%d\n',para_water);%写入每行的 深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
end
%%%---写入第一层水体的声速剖面
%
% %%---------------------------第二层水体------------------------
%
%
%
% para_basement=[1600;0;shen+d1];%第二层水体的(实际为海底) 网格数 上界面粗糙度 水深
% fprintf(fid,'%d\t%d\t%d\n',para_basement);%写入第二层水体的(实际为海底) 网格数 上界面粗糙度 水深
% %--第二层水体声速剖面
% z2=[216.5:0.5:240];%深度,必须有海面和海底的参数
% c2=linspace(1572.3,1593,length(z2));%声速
% % % %--第二层水体声速剖面
% % % %---写入第二层水体的声速剖面
% for jj=1:length(z2)
% para_water2=[z2(jj);c2(jj);0;1.76;0.2*frequency/1000;0];%深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
% fprintf(fid,'%5.2f\t%7.2f\t%d\t%d\t%d\t%d\n',para_water2);%写入每行的 深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
% end
%
%
%
% %%---写入第二层水体的声速剖面
%
% % %%%---------------------------第三层水体------------------------
% para_basement=[600;0;shen+d1+d2];%第二层水体的(实际为海底) 网格数 上界面粗糙度 水深
% fprintf(fid,'%d\t%d\t%d\n',para_basement);%写入第二层水体的(实际为海底) 网格数 上界面粗糙度 水深
% %%--第三层水体声速剖面
% z3=[shen+d1 shen+d1+d2];
% c3=[1881 3245];
% % %%--第二层水体声速剖面
% % %%---写入第二层水体的声速剖面
% for jj=1:length(z3)
% para_water2=[z3(jj);c3(jj);0;2.06;0.06*frequency/1000;0];%深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
% fprintf(fid,'%5.2f\t%7.2f\t%d\t%d\t%d\t%d\n',para_water2);%写入每行的 深度 纵波声速 横波声速 密度 纵波吸收 横波吸收
% end
% %%%---写入第三层水体的声速剖面
%%%-------------------------------海底参数与发射接收部分-------------------
para_3=['''A'''];%在env文件中显示为“'A'”;A表示下边界为声学弹性半空间
fprintf(fid,'%s\t',para_3);fprintf(fid,'%d\n',0);%写入海底参数“'A' 0”,表示下边界为声学弹性半空间 粗糙度
para_31=[shen;1750;0;1.5;0.05;0];%海底深度 P波声速 S波声速 密度 P波声吸收 S波声吸收
fprintf(fid,'%5.2f\t%7.2f\t%d\t%5.2f\t%5.2f\t%d\n',para_31);%写入 海底深度 P波声速 S波声速 密度 P波声吸收 S波声吸收
v_pha=[1455;1750];%相速度范围(一般相速度均大于水中声速)介于水体最低声速和海底声速之间
fprintf(fid,'%d\t%d\n',v_pha);
range=10;%水平最大距离Km
fprintf(fid,'%d\n',range);
z_tran=[1;sysd];%声源个数与深度
fprintf(fid,'%d\t%5.2f\n',z_tran);
num_receiver=shen/jd+1;%接收器的个数
fprintf(fid,'%d\t',num_receiver);
interval_rec=[0 shen];%接收器的深度分布
fprintf(fid,'%d\t%5.2f\t',interval_rec);
fprintf(fid,'%s\n',['/']);
fclose all;