# Try to get unset x,y

**URL:** https://community.freefem.org/t/try-to-get-unset-x-y/1225
**Category:** General Discussion
**Created:** [September 27, 2021, 2:51am UTC](https://community.freefem.org/t/try-to-get-unset-x-y/1225 "2021-09-27T02:51:31Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![xiaojiemo](https://avatars.discourse-cdn.com/v4/letter/x/a4c791/32.png) [@xiaojiemo](https://community.freefem.org/u/xiaojiemo)
#### Post date: [September 27, 2021, 2:51am UTC](https://community.freefem.org/t/try-to-get-unset-x-y/1225/1 "2021-09-27T02:51:31Z")

</div>

here is the code and the software told me there was an error.Please help me out!!

border lower(t=0,410){x=t;y=0;}  
border right(t=0,91){x=410;y=t;}  
border upper(t=410,0){x=t;y=91;}  
border left(t=91,0){x=0;y=t;}

int c=6.7;//长度量纲单位均为mm  
int solid=1;

int[int] YC=[1,3.3,5.5,7.7,9.9,12.1,14.3,16.5,18.7,20.9,23.1,25.3,27.5,29.7,31.9,34.1,36.3,38.5,40.7,42.9,45.1,47.3,49.5,51.7,53.9,56.1,58.3,60.5,62.7,64.9,67.1];  
border s1(t=0,2_pi;i)  
{  
x=YC[i]c+ccos(t);  
y=YC[0]c+csin(t);  
label=solid;  
}  
border s2(t=0,2_pi;i)  
{  
x=YC[i]_c+c_cos(t);  
y=YC[1]_c+c_sin(t);  
label=solid;  
}  
border s3(t=0,2_pi;i)  
{  
x=YC[i]c+ccos(t);  
y=YC[2]c+csin(t);  
label=solid;  
}  
border s4(t=0,2_pi;i)  
{  
x=YC[i]_c+c_cos(t);  
y=YC[3]_c+c_sin(t);  
label=solid;  
}  
border s5(t=0,2_pi;i)  
{  
x=YC[i]c+ccos(t);  
y=YC[4]c+csin(t);  
label=solid;  
}  
border s6(t=0,2_pi;i)  
{  
x=YC[i]_c+c_cos(t);  
y=YC[5]_c+c_sin(t);  
label=solid;  
}  
border s7(t=0,2\*pi;i)  
{  
x=YC[i]_c+c_cos(t);  
y=YC[6]_c+c_sin(t);  
label=solid;  
}  
int[int] nn=[100,20,100,20];  
int[int] mm(31);  
mm=-3;  
int[int] ll(31);  
ll=10;  
mesh th1=buildmesh(lower(10)+right(10)+upper(10)+left(10)+s1(mm)+s2(mm)+s3(mm)+s4(mm)+s5(mm)+s6(mm)+s7(mm));  
mesh th2= buildmesh(s1(ll)+s2(ll)+s3(ll)+s4(ll)+s5(ll)+s6(ll)+s7(ll));  
mesh th=th1+th2;

plot(th,wait=1,ps=“total.eps”);  
plot(th1,wait=1,ps=“pore.eps”);  
plot (th2, wait=1,ps=“solid.eps”);

real s0=clock();

fespace v0h(th1,P1);  
fespace v1h(th2,P1); //温度等变量空间  
fespace v0h1(th1,P1b);  
fespace v1h1(th2,P1b); //速度空间  
fespace v0h2(th1,P0);  
fespace v1h2(th2,P0);//梯度空间  
v0h u1,v1,up1=0,up2=0;  
v1h u2,v2,up3=0,up4=0;

macro def(u) [1/2\*[2_dx(u),dy(u)],1/2_[dy(u),0]] //EOM  
macro Grad(u) [dx(u),dy(u)] // EOM  
macro UGrad(u1,u2) [u1\*dx(u2)+u1\*dy(u2)] //EOM  
macro Mo(u) [pow(dx(u)\*dx(u)+dy(u)\*dy(u),1/2)] //EOM  
v0h duf,uf1,uf=0.00001,vf1,vf=0.00001;  
v1h dus,us=0,us1;  
v0h dpre,pre1,pre=0.00001;  
v0h dwf,wf1,wf=0.00001;  
v0h dfi,fi1,fi=0.00001;  
v0h setaf1=273.15;  
v1h setas1=273.15;

//参数改单位  
real alpha=0;  
real rawl=1000; //kg/m3  
real rawi=913;  
real raws=2647;  
real c1=1;  
real dt=0;  
func pfi=(6_pi^2-15_fi+10)_fi^3;  
func dpfi=30_fi^4-60_fi^3+30_fi^2;  
func gfi= pow(fi,2)_pow(1-fi,2);  
func dgfi=2_fi+4_fi^3-6_fi^2;  
func pfi1=(6_fi1^2-15_fi1+10)_fi1^3;  
func dpfi1=30_fi1^4-60_fi1^3+30_fi1^2;  
func gfi1= pow(fi1,2)_pow(1-fi1,2);  
func dgfi1=2_fi1+4_fi1^3-6_fi1^2;  
func rawf=pfi_rawl+(1-pfi)rawi;  
real kl=2e10;  
real ki=5.56e9;  
real ks=5e10;// bulk modulus  
real ass=10e-6;  
real asi=5.1e-5;  
real asl=1.8e-4; //heat dilation coefficient  
real asf=pfiasl+(1-pfi)asi;  
real mui=4.17e9;  
real mus=37.5e9; //shear modulus  
real muf=1;//viscosity  
real seff=273.15;//k  
real sefs=273.15;  
real avi=1.09;// volume expansion due to ice formation  
real D=1e-8;//水动力弥散系数  
real nos=0.58;  
real kos=1e-13;  
real g=9.8;  
matrix I=  
[[1,0],[0,1]];  
real hl=0.611; //conductivity  
real hi=2.222;  
real hs=7.694;  
func hf=pfihl+(1-pfi)hi;  
real cl=4200; //heat capacity  
real ci=1900;  
real cs=740;  
func cf=pficl+(1-pfi)ci;  
real sl=3.886;//标准熵  
real si=2.6605;  
func ns=nos(1-dx(us)-dy(us)+3_ass\*(u2-setas1));  
func nf=1-ns;//后期可能需要变为循环语句  
func M=1/((sl-si)_rawf);  
real rs=0.5;  
func rf=pow(nf/ns,1/3)rs;  
func W=3rf;  
real ita=pow(6_rf,1/2);  
real kfss=0.55;  
func kfsv=3_nf_kfss/rf;  
func raws1=raws\*(1-3_ass_(u2-setas1));  
real a=0.003;

problem pref(pre,dpre)=int2d(th1)((dx(dpre)_dx(pre)+dy(dpre)dy(pre))/(rawfc1^2)) +int2d(th1)(-vf1_dx(dpre)-vf1_dy(dpre))  
+int1d(th1)(dpre_(N.x_vf1+N.y_vf1))+on(lower,right,upper,left,pre=0);  
problem momf(wf,dwf)=int2d(th1)(dx(dwf)_((pfi_rawf/rawl)_(kl_(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_((2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff))+nf_pre))+  
dy(dwf)_((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_((2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff))+nf_pre)))  
-int2d(th1)(dwf_rawf_g)  
-int2d(th1)(nf_muf_wf_dwf/kos)  
-int1d(th1)(dwf\*(N.x\*((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_((2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff))+nf_pre))+  
N.y_((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_((2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff))+nf_pre))))  
+on(lower,right,upper,left,wf=0); //蓝色部分为液相有效应力  
problem velof(uf,duf)=int2d(th1)(2_duf_alpha_uf)+int2d(th1)(duf\*(wf1_dx(uf)+wf1_dy(uf)))-int2d(th1)(duf_alpha_convect([up1,up2],-dt,wf1))+on(lower,right,upper,left,uf=0.0001);  
problem moms(us,dus)=int2d(th)(dus\*((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_(2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff))))  
+int2d(th)(dus_raws_(2_mus_(dx(us)+dy(us))+ks\*(dx(us)+dy(us))))  
-int2d(th)(dus\*(3_ks_ass\*(setas1-sefs)-(ns_setas1/setaf1-ns+1)pre1))  
+int2d(th)(dus(raws+rawf)g)  
-int1d(th)(dus(N.x_((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_(2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff)))))  
-int1d(th)(dus_N.x_(2_mus_(dx(us)+dy(us))+ks\*(dx(us)+dy(us))))  
+int1d(th)(dus_N.x_(3_ks_ass\*(setas1-sefs)-ns_pre1_setas1/setaf1+ns_pre1-pre1))  
-int1d(th)(dus_(N.y\*((pfi_rawf/rawl)_(kl\*(dx(uf1)+dy(uf1))-(3_kl_asl\*(setaf1-seff)))+((1-pfi)_rawf/rawi)_(2_mui_(dx(uf1)+dy(uf1))+ki\*(dx(uf1)+dy(uf1))-3_ki_asi\*(setaf1-seff)))))  
-int1d(th)(dus_N.y_(2_mus_(dx(us)+dy(us))+ks\*(dx(us)+dy(us))))  
+int1d(th)(dus_N.y_(3_ks_ass\*(setas1-sefs)-ns_pre1_setas1/setaf1+ns\*pre1-pre1))   
+on(lower,right,upper,left,us=0.0000001);

problem order(fi,dfi)=int2d(th1)(dfi_alpha_fi/M)  
-int2d(th1)(alpha_dfi_convect([up1,up2],-dt,fi1)/M)  
//-int2d(th1)(dfi_dpfi_(rawf\*(cl-ci)_(setaf1_log(setaf1/273.15)-setaf1+seff))  
//+int2d(th1)(dfi_dpfi_rawf\*(sl-si)_seff_(setaf1-seff)/seff)   
//+int2d(th1)(0.5_dfi_dpfi_ita_ita\*(pow(dy(fi),2)+pow(dx(fi),2))_(rawi-rawl)/rawf)  
//-int2d(th1)(dfi_gfi_dpfi_W\*(rawi-rawl)/rawf)  
//+int2d(th1)(dfi_dgfi_dpfi_W)  
//+int2d(th1)(dfi_dpfi_pre1_(rawl-rawi))  
+int2d(th1)(ita_ita_(dx(fi)_dx(dfi)+dy(fi)dy(dfi)))  
+int1d(th1)(N.xdfi_ita_ita_(dx(fi)+dy(fi)))  
+int1d(th1)(N.y_dfi_ita_ita_(dx(fi)+dy(fi)))  
+on(lower,right,upper,left,fi=1);// fi=1,与非线性相关的项为与dpfi相关的所有项  
problem temps(u2,v2)=  
int2d(th2)(alpha_v2_(ns_pre_u2/setaf1)_(dx(us)+dy(us)))  
-int2d(th2)(alpha_v2\*(ns_pre_u2/setaf1)_convect([up3,up4],-dt,(dx(us1)+dy(us1))))  
+int2d(th2)(alpha_v2_3_ks_ass_(dx(us)+dy(us)))  
-int2d(th2)(alpha_v2_3_ks_ass_convect([up3,up4],-dt,(dx(us1)+dy(us1))))  
+int2d(th2)(alpha_v2_raws_cs_u2)  
-int2d(th2)(alpha_v2_raws_cs_convect([up3,up4],-dt,setas1))  
//+int2d(th2)(alpha_v2_6_ns\*(raws1/raws)_(u2/setaf1)preass_u2)  
//+int2d(th2)(alpha_v2_6_ns_(raws1/raws)_(u2/setaf1)preass_convect([up3,up4],-dt,setas1))  
//-int2d(th2)(alpha_v2_18_ns_pow(u2,2)_pre_pow(ass,2)_u2/setaf1)  
//+int2d(th2)(alpha_v2_18_ns_pow(u2,2)prepow(ass,2)convect([up3,up4],-dt,setaf1)/setaf1)  
//-int2d(th2)(alphav2_pow(u2,2)_pow(setaf1,-2)pre3_ass_ns_setaf1)  
//+int2d(th2)(alpha_v2_pow(u2,2)_pow(setaf1,-2)pre3_ass_ns_convect([up3,up4],-dt,setaf1))  
//-int2d(th2)(alpha_v2_pow(u2,2)_pow(setaf1,-1)3ass_ns_pre)  
//+int2d(th2)(alpha_v2_pow(u2,2)pow(setaf1,-1)3assns_convect([up3,up4],-dt,pre1))  
//+int2d(th2)(v2_kfsv_(u2-setaf1))  
+int2d(th2)(v2_nf_muf_wf_wf/kos)  
+int2d(th2)(hs\*(dx(u2)_dx(v2)+dy(u2)dy(v2)))  
-int1d(th2)(N.xv2_(hs\*(dx(u2)+dy(u2))))  
-int1d(th2)(N.y_v2_(hs\*(dx(u2)+dy(u2))))  
+int2d(th2,left,right)(v2_N.x_u2)  
+int2d(th2,upper)(v2_N.y_u2);  
+int2d(th2,lower)(v2\*(a\*(263.15-u2)-100));

solve tempf(u1,v1)=int2d(th1)(alpha_v1_rawf_cf_u1)+int2d(th1)(alpha_v1_rawf_cf_convect([up1,up2],-dt,setaf1))  
//+int2d(th1)(alpha_v1_nf_pre_9_asf_asf_u1_u1)+int2d(th1)(alpha_v1_nf_pre_9_asf_asf_u1_convect([up1,up2],-dt,setaf1))  
+int2d(th1)(alpha_v1_pre_asf_u1)+int2d(th1)(alpha_v1_pre_asf_convect([up1,up2],-dt,setaf1))  
-int2d(th1)(alpha_v1_3_nf_asf_u1_pre)+int2d(th1)(alpha_v1_3_nf_asf_u1_convect([up1,up2],-dt,pre1))  
+int2d(th1)(alpha_v1_nf_pre_(dx(uf)+dy(uf)))  
-int2d(th1)(alpha_v1_nf_pre_convect([up1,up2],-dt,(dx(uf1)+dy(uf1))))  
+int2d(th1)(alpha_v1_rawf\*(pfi_u1_3_kl_asl/rawl+(1-pfi)_u1_3_ki_asi/rawi)_(dx(uf)+dy(uf)))  
-int2d(th1)(alpha_v1_rawf_(pfi_u1_3_kl_asl/rawl+(1-pfi)_u1_3_ki_asi/rawi)_convect([up1,up2],-dt,(dx(uf1)+dy(uf1))))  
+int2d(th1)(alpha_v1_W_dgfi_fi)  
-int2d(th1)(alpha_v1_W_dgfi_convect([up1,up2],-dt,fi1))  
+int2d(th1)(v1_ita_ita_(dx(fi)_dx(dfi)+dy(fi)dy(dfi)))  
+int2d(th1)(alphav1_(rawl-rawi)_0.5_ita_ita_(dx(fi)_dx(fi)+dy(fi)dy(fi))dpfinfrawf_fi/pow(rawf,2))  
-int2d(th1)(alpha_v1_(rawl-rawi)_0.5_ita_ita_(dx(fi)_dx(fi)+dy(fi)dy(fi))dpfinfrawf_convect([up1,up2],-dt,fi1)/pow(rawf,2))  
+int2d(th1)(alpha_v1_(rawl-rawi)_W_gfi_dpfi_nf_rawf_fi/pow(rawf,2))  
-int2d(th1)(alpha_v1_(rawl-rawi)_W_gfi_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/pow(rawf,2))  
+int2d(th1)(alpha_v1_(rawl-rawi)_W_gfi_dpfi_nf_rawf_fi/pow(rawf,2))  
-int2d(th1)(alpha_v1_(rawl-rawi)_W_gfi_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/pow(rawf,2))  
+int2d(th1)(-alpha_v1_3_pre_u1\*(asl_rawi-asi_rawl)_dpfi_nf_rawf_fi/pow(rawf,2))  
-int2d(th1)(-alpha_v1_3_pre_u1\*(asl_rawi-asi_rawl)_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/pow(rawf,2));  
+int2d(th1)(-alpha_v1_mui_pow(dx(uf)+dy(uf),2)dpfinf_rawf_fi/rawi)  
-int2d(th1)(-alpha_v1_mui_pow(dx(uf)+dy(uf),2)_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1_pow(dx(uf)+dy(uf),2)_0.5_(kl/rawl-ki/rawi)_dpfi_nf_rawf_fi)  
-int2d(th1)(alpha_v1_pow(dx(uf)+dy(uf),2)_0.5_(kl/rawl-ki/rawi)_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1_(dx(uf)+dy(uf))_seff_3\*(asl_kl/rawl-asi_ki/rawi)_dpfi_nf_rawf_fi)  
-int2d(th1)(alpha_v1_(dx(uf)+dy(uf))_seff_3\*(asl_kl/rawl-asi_ki/rawi)_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1_(dx(uf)+dy(uf))_seff_3\*(asl_kl/rawl-asi_ki/rawi)_dpfi_nf_rawf_fi)  
-int2d(th1)(alpha_v1_(dx(uf)+dy(uf))_seff_3\*(asl_kl/rawl-asi_ki/rawi)_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1_(cl-ci)_(u1-seff)dpfinf_rawf_fi)  
-int2d(th1)(alpha_v1\*(cl-ci)_(u1-seff)dpfinf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1\*(sl-si)_seff_dpfi_nf_rawf_fi)  
-int2d(th1)(alpha_v1\*(sl-si)_seff_dpfi_nf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
+int2d(th1)(alpha_v1_3_ki_avi_(dx(uf)+dy(uf))_pow(rawi,-1)dpfinf_rawf_fi)  
-int2d(th1)(alpha_v1_3_ki_avi_(dx(uf)+dy(uf))_pow(rawi,-1)dpfinf_rawf_convect([up1,up2],-dt,fi1)/rawi)  
-int2d(th1)(v1_kfsv\*(u1-u2))  
+int2d(th1)(hs\*(dx(u1)_dx(v1)+dy(u1)dy(v1)))  
-int1d(th1)(N.xv1_(hs\*(dx(u1)+dy(u1))))  
-int1d(th1)(N.y_v1_(hs\*(dx(u1)+dy(u1))))  
+int2d(th1,left,right)(v1_N.x_u1)  
+int2d(th1,upper)(v1_N.y_u1)  
+int2d(th1,lower)(v1\*(a\*(263.15-u1)-100));  
//+on(left,right,N.x_u1=0)  
//+on(lower,N.y_u1=0)  
//+on(upper,0.003(263.15-u1)=100);

plot (coef=0.02,cmm="u2 et pre ",pre,u2,ps=“test.eps”,value=1,wait=1);  
{  
real[int] tt(21),pp(21),yy(21);  
for (int i=0;i\<21;i++)  
{  
yy[i]=i/20;  
tt[i]=u2(200,i/20.);  
pp[i]=pre(i/20.,45);  
}  
cout \<\< “” \<\< yy \<\< endl;  
}

dt=0.5;  
for (int i=0;i\<=500;i++)   
{  
alpha=1/dt;  
for(int j=0;j\<=500;j++)  
{  
up1=vf;  
up2=0;  
up3=vf-wf;  
up4=0;  
pre1=pre;  
wf1=wf;  
uf1=uf;  
us1=us;  
fi1=fi;  
setaf1=u1;  
setas1=u2;  
pref;plot(pre,wait=1);  
momf;plot(wf,wait=1);  
velof;plot(vf,wait=1);  
moms;plot(us,wait=1);  
order;plot(fi,wait=1);  
temps;  
tempf;  
}  
}
