Parametri meccanici dei materiali e geometria della sezione

Limiti deformativi e tensionali calcestruzzo

ϵc2:=(0.20/100)
ϵcu:=-(0.35/100)
fck:=25
γc:=1.5
fcd=-((0.85*fck)/(γc))

Legame costitutivo calcestruzzo

σcp[ϵc_]=fcd*(1-(((1+((ϵc)/(ϵc2))))^2))
σc[ϵc_]:=If[ϵc>0,0,If[-ϵc2<=ϵc≤0,σcp[ϵc],fcd]]
Plot[σc[x],{x,0,ϵcu}]

Limiti deformativi e tensionali acciaio

Es:=200000
fyk:=450
γs:=1.15
ϵud:=0.067
fyd=(fyk/(γs))
ϵyd=(fyd/Es)

Legame costitutivo acciaio

σs[ϵs_]:=If[-ϵyd≤ϵs≤ϵyd,(fyd/(ϵyd))*ϵs,If[ϵs>0,fyd,-fyd]]
Plot[σs[x],{x,-0.070,0.070}]

Caratteristiche Geometriche della sezione Anulare

ϕ:=20 (*mm*)
m:=20(*Numero di divisioni, il numero di barre sarà pari ad m*2*)
δ:=0.05 (*copriferro, in metri*)
REeff:=3.5(*Raggio esterno del cilindro, in metri*)
RIeff:=3.0(*Raggio interno del cilindro, in metri*)
fattorescalante:=10(*si sceglie ad arbitrio un fattore adimensionale che serve a definire una debole eccentricità alla sezione, ha lo scopo di premettere una connessione più lineare nei campo successivi*)

Aree di acciaio e raggi

Table[As[i]=((π*(ϕ^2))/4),{i,{1,(m/2)+1}}]
Table[As[i]=2*((π*(ϕ^2))/4),{i,2,(m/2)}]
Table[As[i],{i,1,(m/2)+1,1}]
RE:=(REeff-δ)*1000
RI:=(RIeff+δ)*1000

Distanze dal lembo superiore e dall’asse baricentrico

SetAccuracy[Table[yE[i+1]=Abs[RE*Cos[((180Degree)/(m/2))*i]],{i,0,(m/2)}],5] (*distanza delle armature dall'asse baricentrico in valore assoluto*)
Table[yEint[i+1]=RE*Cos[((180Degree)/(m/2))*i],{i,0,(m/2)}](*distanza delle armature dall'asse baricentrico in valore relativo*)
SetAccuracy[Table[dyE[i]=REeff*1000-yEint[i],{i,1,(m/2)+1}],5](*distanza delle armature dal lembo superiore*)
Table[yI[i+1]=Abs[RI*Cos[((180Degree)/(m/2))*i]],{i,0,(m/2)}](*distanza delle armature dall'asse baricentrico in valore assoluto*)
Table[yIint[i+1]=RI*Cos[((180Degree)/(m/2))*i],{i,0,(m/2)}](*distanza delle armature dall'asse baricentrico in valore relativo*)
SetAccuracy[Table[dyI[i]=REeff*1000-yIint[i],{i,1,(m/2)+1}],5](*distanza delle armature dal lembo superiore*)

Rappresentazione grafica della sezione

ArmaturaEsterna=Graphics[{PointSize->Small,Point[Table[{RE*Cos[((360Degree)/m)*i],RE*Sin[((360Degree)/m)*i]},{i,0,m}]]}];
ArmaturaInterna=Graphics[{PointSize->Small,Point[Table[{RI*Cos[((360Degree)/m)*i],RI*Sin[((360Degree)/m)*i]},{i,0,m}]]}];
Rappresentazionegrafica=Show[ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["SEZIONE"]]

Campo 0, sforzo Normale a debole eccentricità

ϵ0v=Table[{ϵ0->ϵud-((ϵud)/fattorescalante)*i},{i,1,fattorescalante,1}]
ϵs0[y_]=ϵ0+(((ϵud-ϵ0)*(y-δ*1000))/(2*REeff*1000-δ*1000))
ListLinePlot[Table[ϵs0[dyE[i]],{i,1,(m/2)+1}]/.ϵ0v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs0[dyI[i]],{i,1,(m/2)+1}]/.ϵ0v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]

Questa deformata ha senso perchè sto considerando le fibre della armatura interna, ovvero spostante verso l’interno. Sullo strato 9 ho un progressivo abbassamento della deformata. Il grafico superiore invece mostra la deformata delle fibre esterne in cui, lo strato 9 è stato scelto con deformazione pari ad ϵud, ovvero di “cardine”.

NRd0=Chop[(∑_(i=1)^((m/2)+1))(σs[ϵs0[dyE[i]]]*As[i]/.ϵ0v)+(∑_(i=1)^((m/2)+1))(σs[ϵs0[dyI[i]]]*As[i]/.ϵ0v)]
MRd0=Chop[(∑_(i=1)^((m/2)+1))((σs[ϵs0[dyE[i]]]*As[i]*yEint[i])+(σs[ϵs0[dyI[i]]]*As[i]*yIint[i]))/.ϵ0v]
ListPlot[Table[σs[ϵs0[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ0v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs0[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ0v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs0[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ0v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs0[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ0v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]

VERIFICA DEI VALORI OTTENUTI

Table[((σs[ϵs0[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ0v
Table[((σs[ϵs0[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ0v

Table[((σs[ϵs0[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ0v[[1]]
Table[((σs[ϵs0[dyI[i]]]*As[i])*yIint[i]),{i,1,(m/2)+1}]/.ϵ0v[[1]]

Total[Table[((σs[ϵs0[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ0v[[1]]]
Total[Table[((σs[ϵs0[dyI[i]]]*As[i])*yIint[i]),{i,1,(m/2)+1}]/.ϵ0v[[1]]]

(∑_(i=1)^((m/2)+1))(σs[ϵs0[dyE[i]]]*As[i]*yEint[i])/.ϵ0v
(∑_(i=1)^((m/2)+1))(σs[ϵs0[dyI[i]]]*As[i]*yIint[i])/.ϵ0v

Campo 1

ϵ1v=Table[{ϵ0->((ϵcu)/fattorescalante)*i},{i,1,fattorescalante,1}]
x1=((ϵ0*(2*REeff-δ)*1000)/(ϵud-ϵ0))/.ϵ1v(*POSIZIONE ASSE NEURTO DAL LEMBO SUPERIORE*)
Show[Table[Graphics[Line[{{-REeff*1000,REeff*1000+x1[[i]]},{REeff*1000,REeff*1000+x1[[i]]}}]],{i,1,fattorescalante,1}],ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["POSIZIONE DELL'ASSE NEUTRO AL VARIARE
 DEL FATTORE DI SCALA"]]
ϵs1[y_]=ϵ0+(((ϵud-ϵ0))/(2*REeff*1000-δ*1000))*y

ListLinePlot[Table[ϵs1[dyE[i]],{i,1,(m/2)+1}]/.ϵ1v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs1[dyI[i]],{i,1,(m/2)+1}]/.ϵ1v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs1[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ1v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs1[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ1v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs1[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ1v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs1[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ1v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]
Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x1[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x1[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Area1=Chop[Table[NIntegrate[Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥(RIeff*1000+x1[[i]])],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

MomentoStatico1=Chop[Table[NIntegrate[(y)*Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥(RIeff*1000+x1[[i]])],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

xg1=(MomentoStatico1/Area1)

Table[ϵs1[dyE[i]],{i,1,(m/2)+1}]/.ϵ1v//MatrixForm

Table[σs[ϵs1[dyE[i]]],{i,1,(m/2)+1}]/.ϵ1v//TableForm

(∑_(i=1)^((m/2)+1))(σs[ϵs1[dyE[i]]]/.ϵ1v)(*somma delle tensioni su tutte le file di acciaio al variare della posizione dello stato deformativo*)

Table[σs[ϵs1[dyI[i]]],{i,1,(m/2)+1}]/.ϵ1v//TableForm

NRd1=(∑_(i=1)^((m/2)+1))(σs[ϵs1[dyE[i]]]*As[i]/.ϵ1v)+(∑_(i=1)^((m/2)+1))(σs[ϵs1[dyI[i]]]*As[i]/.ϵ1v)+Area1*0.85*fcd

MRd1=(∑_(i=1)^((m/2)+1))(σs[ϵs1[dyE[i]]]*As[i]*yEint[i]/.ϵ1v)+(∑_(i=1)^((m/2)+1))(σs[ϵs1[dyI[i]]]*As[i]*yIint[i]/.ϵ1v)+Table[xg1[[j]]*(Area1[[j]]*0.85*fcd),{j,1,fattorescalante,1}]

((Integrate[(y)*Boole[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥RIeff],{x,-REeff,REeff},{y,-REeff,REeff}])/(Integrate[Boole[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥RIeff],{x,-REeff,REeff},{y,-REeff,REeff}]))(*((Momento Statico)/Area)=baricentro*)
RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥RIeff,{x,-REeff,REeff},{y,-REeff,REeff}]

Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x1[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x1[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Campo 2

ϵ2v=Table[{ϵ0->ϵud-(((ϵud)/2)/fattorescalante)*i},{i,1,fattorescalante,1}]
x2=((ϵcu*((2*REeff-δ)*1000))/(ϵcu+ϵ0))/.ϵ2v

Show[Table[Graphics[Line[{{-REeff*1000,REeff*1000+x2[[i]]},{REeff*1000,REeff*1000+x2[[i]]}}]],{i,1,fattorescalante,1}],ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["POSIZIONE DELL'ASSE NEUTRO AL VARIARE
 DEL FATTORE DI SCALA"]]
ϵs2[y_]=ϵcu+(((ϵ0-ϵcu))/((2*REeff-δ)*1000))*y
ListLinePlot[Table[ϵs2[dyE[i]],{i,1,(m/2)+1}]/.ϵ2v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs2[dyI[i]],{i,1,(m/2)+1}]/.ϵ2v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs2[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ2v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs2[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ2v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs2[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ2v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs2[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ2v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]
Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x2[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x2[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Area2=Chop[Table[NIntegrate[Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x2[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

MomentoStatico2=Chop[Table[NIntegrate[(y)*Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x2[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

xg2=(MomentoStatico2/Area2)

NRd2=(∑_(i=1)^((m/2)+1))(σs[ϵs2[dyE[i]]]*As[i]/.ϵ2v)+(∑_(i=1)^((m/2)+1))(σs[ϵs2[dyI[i]]]*As[i]/.ϵ2v)+Area2*0.85*fcd

MRd2=(∑_(i=1)^((m/2)+1))(σs[ϵs2[dyE[i]]]*As[i]*yEint[i]/.ϵ2v)+(∑_(i=1)^((m/2)+1))(σs[ϵs2[dyI[i]]]*As[i]*yIint[i]/.ϵ2v)+Table[xg2[[j]]*(Area2[[j]]*0.85*fcd),{j,1,fattorescalante,1}]

Campo 3

ϵ3v=Table[{ϵ0->((ϵud)/2)-(((ϵud)/4)/fattorescalante)*i},{i,1,fattorescalante,1}]
x3=((ϵcu*((2*REeff-δ)*1000))/(ϵcu+ϵ0))/.ϵ3v

Show[Table[Graphics[Line[{{-REeff*1000,REeff*1000+x3[[i]]},{REeff*1000,REeff*1000+x3[[i]]}}]],{i,1,fattorescalante,1}],ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["POSIZIONE DELL'ASSE NEUTRO AL VARIARE
 DEL FATTORE DI SCALA"]]
ϵs3[y_]=ϵcu+(((ϵ0-ϵcu))/((2*REeff-δ)*1000))*y
ListLinePlot[Table[ϵs3[dyE[i]],{i,1,(m/2)+1}]/.ϵ3v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs3[dyI[i]],{i,1,(m/2)+1}]/.ϵ3v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs3[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ3v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs3[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ3v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs3[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ3v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs3[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ3v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]
Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x3[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x3[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Area3=Chop[Table[NIntegrate[Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x3[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

MomentoStatico3=Chop[Table[NIntegrate[(y)*Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x3[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

xg3=(MomentoStatico3/Area3)

NRd3=(∑_(i=1)^((m/2)+1))(σs[ϵs3[dyE[i]]]*As[i]/.ϵ3v)+(∑_(i=1)^((m/2)+1))(σs[ϵs3[dyI[i]]]*As[i]/.ϵ3v)+Area3*0.85*fcd

MRd3=(∑_(i=1)^((m/2)+1))(σs[ϵs3[dyE[i]]]*As[i]*yEint[i]/.ϵ3v)+(∑_(i=1)^((m/2)+1))(σs[ϵs3[dyI[i]]]*As[i]*yIint[i]/.ϵ3v)+Table[xg3[[j]]*(Area3[[j]]*0.85*fcd),{j,1,fattorescalante,1}]

Campo 4

ϵ4v=Table[{ϵ0->((ϵud)/4)-(((ϵud)/8)/fattorescalante)*i},{i,1,fattorescalante,1}]
x4=((ϵcu*((2*REeff-δ)*1000))/(ϵcu+ϵ0))/.ϵ4v

Show[Table[Graphics[Line[{{-REeff*1000,REeff*1000+x4[[i]]},{REeff*1000,REeff*1000+x4[[i]]}}]],{i,1,fattorescalante,1}],ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["POSIZIONE DELL'ASSE NEUTRO AL VARIARE
 DEL FATTORE DI SCALA"]]
ϵs4[y_]=ϵcu+(((ϵ0-ϵcu))/((2*REeff-δ)*1000))*y
ListLinePlot[Table[ϵs4[dyE[i]],{i,1,(m/2)+1}]/.ϵ4v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs4[dyI[i]],{i,1,(m/2)+1}]/.ϵ4v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs4[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ4v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs4[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ4v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs4[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ4v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs4[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ4v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]
Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x4[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x4[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Area4=Chop[Table[NIntegrate[Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x4[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

MomentoStatico4=Chop[Table[NIntegrate[(y)*Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y≥REeff*1000+x4[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

xg4=(MomentoStatico4/Area4)

NRd4=(∑_(i=1)^((m/2)+1))(σs[ϵs4[dyE[i]]]*As[i]/.ϵ4v)+(∑_(i=1)^((m/2)+1))(σs[ϵs4[dyI[i]]]*As[i]/.ϵ4v)+Area4*0.85*fcd

MRd4=(∑_(i=1)^((m/2)+1))(σs[ϵs4[dyE[i]]]*As[i]*yEint[i]/.ϵ4v)+(∑_(i=1)^((m/2)+1))(σs[ϵs4[dyI[i]]]*As[i]*yIint[i]/.ϵ4v)+Table[xg4[[j]]*(Area4[[j]]*0.85*fcd),{j,1,fattorescalante,1}]

Campo 5

ϵ5v=Table[{ϵ0->((ϵud)/8)-(((ϵud)/50)/fattorescalante)*i},{i,1,fattorescalante,1}]
x5=((ϵcu*((2*REeff-δ)*1000))/(ϵcu+ϵ0))/.ϵ5v

Show[Table[Graphics[Line[{{-REeff*1000,REeff*1000+x5[[i]]},{REeff*1000,REeff*1000+x5[[i]]}}]],{i,1,fattorescalante,1}],ArmaturaEsterna,ArmaturaInterna,Graphics[Circle[{0,0},REeff*1000]],Graphics[Circle[{0,0},RIeff*1000]],Frame->True,PlotLabel->StandardForm["POSIZIONE DELL'ASSE NEUTRO AL VARIARE
 DEL FATTORE DI SCALA"]]
ϵs5[y_]=ϵcu+(((ϵ0-ϵcu))/((2*REeff-δ)*1000))*y
ListLinePlot[Table[ϵs5[dyE[i]],{i,1,(m/2)+1}]/.ϵ5v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs5[dyI[i]],{i,1,(m/2)+1}]/.ϵ5v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs5[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ5v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs5[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ5v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs5[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ5v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs5[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ5v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]
Table[RegionPlot[(RIeff^2)<=x^2+y^2<=(REeff^2)&&y≥REeff+((x5[[i]])/1000),{x,-REeff,REeff},{y,REeff+((x5[[i]])/1000),REeff}],{i,1,fattorescalante,1}]

Area5=Chop[Table[π*(((REeff*1000))^2)-π*(((RIeff*1000))^2),{fattorescalante}]-Table[NIntegrate[Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y<=REeff*1000+x5[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

poichè l’analisi ha un tempo di convergenza eccessivamante lungo, ho scelto di calcolare l’area della parte in trazione (più piccola) per poi sottrarla all’area intera

MomentoStatico5=Chop[Table[NIntegrate[(y)*Boole[(((RIeff*1000))^2)<=x^2+y^2≤(((REeff*1000))^2)&&y<=REeff*1000+x5[[i]]],{x,-REeff*1000,REeff*1000},{y,-REeff*1000,REeff*1000}],{i,1,fattorescalante,1}]]

xg5=-(MomentoStatico5/Area5)

NRd5=(∑_(i=1)^((m/2)+1))(σs[ϵs5[dyE[i]]]*As[i]/.ϵ5v)+(∑_(i=1)^((m/2)+1))(σs[ϵs5[dyI[i]]]*As[i]/.ϵ5v)+Area5*0.85*fcd

MRd5=(∑_(i=1)^((m/2)+1))(σs[ϵs5[dyE[i]]]*As[i]*yEint[i]/.ϵ5v)+(∑_(i=1)^((m/2)+1))(σs[ϵs5[dyI[i]]]*As[i]*yIint[i]/.ϵ5v)+Table[xg5[[j]]*(Area5[[j]]*0.85*fcd),{j,1,fattorescalante,1}]

Campo 6, sforzo Normale a grande eccentricità

ϵ6v=Table[{ϵ0->((ϵcu)/fattorescalante)*i},{i,1,fattorescalante,1}]
ϵs6[y_]=ϵcu+(((ϵ0-ϵcu)*y)/(2*REeff*1000))
ListLinePlot[Table[ϵs6[dyE[i]],{i,1,(m/2)+1}]/.ϵ6v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA ESTERNA"]]
ListLinePlot[Table[ϵs6[dyI[i]],{i,1,(m/2)+1}]/.ϵ6v,PlotLabel->StandardForm["DEFORMAZIONI NELLA CORONA INTERNA"]]

Questa deformata ha senso perchè sto considerando le fibre della armatura interna, ovvero spostante verso l’interno. Sullo strato 9 ho un progressivo abbassamento della deformata. Il grafico superiore invece mostra la deformata delle fibre esterne in cui, lo strato 9 è stato scelto con deformazione pari ad ϵud, ovvero di “cardine”.

NRd6=(∑_(i=1)^((m/2)+1))(σs[ϵs6[dyE[i]]]*As[i]/.ϵ6v)+(∑_(i=1)^((m/2)+1))(σs[ϵs6[dyI[i]]]*As[i]/.ϵ6v)+Table[π*((((REeff*1000))^2)-(((RIeff*1000))^2))*0.85*fcd,{fattorescalante}]
MRd6=(∑_(i=1)^((m/2)+1))((σs[ϵs6[dyE[i]]]*As[i]*yEint[i])+(σs[ϵs6[dyI[i]]]*As[i]*yIint[i]))/.ϵ6v
ListPlot[Table[σs[ϵs6[dyE[i]]],{i,1,(m/2)+1,1}]/.ϵ6v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs6[dyE[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ6v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA ESTERNA"]]
ListPlot[Table[σs[ϵs6[dyI[i]]],{i,1,(m/2)+1,1}]/.ϵ6v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA TENSIONE SULLA CORONA INTERNA"]]
ListPlot[Table[σs[ϵs6[dyI[i]]]*As[i],{i,1,(m/2)+1,1}]/.ϵ6v,PlotRange->All,Joined->True,PlotLabel->StandardForm["ANDAMENTO DELLA FORZA SULLA CORONA INTERNA"]]

VERIFICA DEI VALORI OTTENUTI

Table[((σs[ϵs6[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ6v
Table[((σs[ϵs6[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ6v

Table[((σs[ϵs6[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ6v[[1]]
Table[((σs[ϵs6[dyI[i]]]*As[i])*yIint[i]),{i,1,(m/2)+1}]/.ϵ6v[[1]]

Total[Table[((σs[ϵs6[dyE[i]]]*As[i])*yEint[i]),{i,1,(m/2)+1}]/.ϵ6v[[1]]]
Total[Table[((σs[ϵs6[dyI[i]]]*As[i])*yIint[i]),{i,1,(m/2)+1}]/.ϵ6v[[1]]]

(∑_(i=1)^((m/2)+1))(σs[ϵs6[dyE[i]]]*As[i]*yEint[i])/.ϵ6v
(∑_(i=1)^((m/2)+1))(σs[ϵs6[dyI[i]]]*As[i]*yIint[i])/.ϵ6v

Interpolazione

Nx={NRd0,NRd1,NRd2,NRd3,NRd4,NRd5,NRd6}//Flatten;
Mx={MRd0,MRd1,MRd2,MRd3,MRd4,MRd5,MRd6}//Flatten;
Graphics[Point[Table[{Nx[[i]],Mx[[i]]},{i,1,Length[Nx]}]],Frame->True,AspectRatio->1,Axes->{True,True}];

Needs["PlotLegends`"]
Px1=Table[{((-Nx[[i]])/(10^3)),((Mx[[i]])/(10^6))},{i,1,Length[Nx]}];
Px2=Table[{((-Nx[[i]])/(10^3)),((-Mx[[i]])/(10^6))},{i,1,Length[Nx]}];
curvaMNx1[x_]=Fit[Px1, {1,x,(x^2),(x^3),(x^4),(x^5)}, x]
curvaMNx2[x_]=Fit[Px2, {1,x,(x^2),(x^3),(x^4),(x^5)}, x]
grafico=Plot[{ curvaMNx1[x],curvaMNx2[x]}, {x, ((-Nx[[Length[Nx]]])/(10^3)), ((-Nx[[1]])/(10^3))}]
tabella=Grid[{{"Nx MAX","Mx MAX"},{Abs[Min[(Nx/(10^3))]],Abs[Min[(Mx/(10^6))]]},
{"Nx MIN","Mx MIM"},{Abs[Max[(Nx/(10^3))]],Abs[Min[(Mx/(10^6))]]}},Frame->All]

Dominio=Labeled[Show[ListPlot[{Px1,Px2}, PlotStyle->Red,PlotLabel->Style[Framed["Dominio M-N®"],FontSize->18,Black,Background->Lighter[Yellow,0.6]]], grafico],"Powered by (Riccardo^™)"]
Tabella=Grid[{{"Nx MAX","Mx MAX"},{Abs[Min[(Nx/(10^3))]],Abs[Min[(Mx/(10^6))]]},
{"Nx MIN","Mx MIM"},{Abs[Max[(Nx/(10^3))]],Abs[Min[(Mx/(10^6))]]}},Frame->All]

Grafico e tabella

Rappresentazionegrafica

Dominio

Tabella