Opensees Community
1.11K subscribers
500 photos
158 videos
62 files
166 links
The Largest OpenSees Community of Iran (LOCI). Channel is managed by Dr. Afshin Alborzi.

https://www.instagram.com/ledocteurafshina

YouTube: LOCI Community

Contact with administrator👇

@OpenSeesCommunity_pm
Download Telegram
مبحث خیلی تخصصی که در لحظه های آتی در کانال بیان خواهد شد:🌷

اگر فضاهای بین اتم های کره زمین از بین بروند، و حجم کره زمین به اندازه یک توپ پینگ پنگ شود، آیا جرمش هم کم می شود؟ و آیا کره زمین باز همین جاذبه را دارد؟
پاسخ به ابهامات علمی دانشجویان خوب🌷❤️
پاسخ به ابهامات علمی دانشجویان خوب🌷❤️
Forwarded from Opensees Community (afshina)
مبحث خیلی تخصصی که در لحظه های آتی در کانال بیان خواهد شد:🌷

اگر فضاهای بین اتم های کره زمین از بین بروند، و حجم کره زمین به اندازه یک توپ پینگ پنگ شود، آیا جرمش هم کم می شود؟ و آیا کره زمین باز همین جاذبه را دارد؟
🌱زمان و شبه زمان، مساله این است! (بخش ششم)🌷

در اتم های اجرام، الکترون ها در اطراف هسته های اتم ها می چرخند. فضاهای خالی درون اتم ها که محل حرکت الکترون ها هستند، فضاهای بسیار زیادی هستند. اگر این فضاها حذف شوند، یعنی الکترون ها به هسته های اتم ها بچسبند، در واقع مبنای اتم ها فرو ریخته اند و همه الکترون ها در هسته های اتم ها جمع شده اند. اینجا است که حجم اتم کم شده است ولی جرمش هیچ تغییری نکرده است. حال اگر این اتفاق برای تمامی اتم های کره زمین بیفتد، و حجم کره زمین به اندازه یک توپ پینگ پونگ شود، جرمش هیچ تغییری نمی کند، ولی با همان اندازه کوچکش باز هم همین نیروی جاذبه را دارد! پس برخلاف همه آموخته های قبلی تان، جرم هیچ ارتباطی به حجم ندارد و حتی جرم حجمی یا وزن مخصوص هم ملاک های خوبی برای سنجش عملکرد لرزه ای سازه ها حین زلزله نیستند!
حالا بگذارید که باز هم قضیه را تخصصی تر و پیچیده تر کنم تا هم هیجان تان بیشتر شود و هم کمی بترسید و میزان آدرنالین خونتان برود بالاتر!
اگر بلایی که گفتم بر سر کره زمین بیاید و مطابق موارد بیان شده برابر با یک توپ پینگ پونگ شود، آن گاه به کره زمین می گویند یک "سیاه چال فضایی!" در فضای پیرامون ما سیاه چال های فضایی بسیاری وجود دارند که اندازه های برخی از آنها حتی از خورشید ما هم بزرگ تر هستند. فکرش را بکنید اگر سیاه چال فضایی با اندازه ای معادل توپ پینگ پونگ جاذبه ای برابر با کره زمین داشته باشد، حال سیاه چاله ای با اندازه خورشید چه جاذبه بزرگی خواهد داشت؟!
جاذبه عظیم سیاه چال های فضایی تمامی اجرام از جمله ستارگان را به سمت خودشان جذب می کند. میزان جاذبه آنها آن قدر زیاد است که اگر نور هم بخواهد از کنارشان عبور کند، حتی نور را هم جذب خودشان می کنند! در واقع نور هم راه گریزی از کنار آنها ندارد و در نتیجه متوقف می شود. به همین خاطر است که سیاه چال ها سیاه به نظر می رسند. در جایی که نور متوقف شود، گذر زمان هم متوقف می شود و زمان دیگر نمی گذرد! به عبارت دیگر سیاه چال های فضایی آن قدر سنگین هستند و آن قدر فضای اطرافشان را انحنا می دهند، که تمامی اجرام اطرافشان را به سمت خودشان جذب می کنند (مطابق مباحث پیشین) بنابراین سفر به درون سیاه چاله های فضایی که بعدی و انحنایی در زمان ایجاد کرده اند، می تواند ما را به زمان های گذشته ببرد!، مثلا ۱۹۷۴ یا ۱۸۰۰ میلادی! سفری در زمان! (شجاع باشید!، این ماجرا ادامه دارد)🌷
نکات خیلی خوب تکمیلی مطرح شده توسط دانشجوی ممتاز ایرانی🌷❤️البته من توی دو جمله از اسکرین شات با ایشان اختلاف نظر دارم! اما فضای علمی گستره ای است با امکان بحث آزاد و مطرح شدن نظرات تمامی پژوهشگران🌷
🌷دانشجویان عزیز، مراقب باشند تا اشتباهاتی از این قبیل را مرتکب نشوند🌷
پاسخ به سوالات علمی دانشجویان خوب🌷❤️مختص تعطیلات آخر هفته
برای نمایش شکل تغییر شکل یافته سازه حین تحلیل، در مدل های سه بعدی از بلوک ذیل استفاده نمایید:🌷🌷


set displayType "PLAN"
#set displayType "PERSPECTIVE"
# a window showing the displaced shape

recorder display g3 10 10 300 300 -wipe
if {$displayType == "PERSPECTIVE"} {
prp -7500 -5000 50000
vrp 0 -500 250
vup 0 0 1
vpn 0 -1 0
viewWindow -200 400 -300 300
}

if {$displayType == "PLAN"} {
prp 0 0 1000
vrp 0 0 0
vup 0 -1 0
vpn 0 0 -1
viewWindow -200 200 -200 200
}
plane 0 1e12
port -1 1 -1 1
projection 1
fill 0
display 1 0 10
یک بلوک فوق حرفه ای OpenSees، مختص ساخت m فایلی که توسط نرم افزار متلب خوانده شود:🌷🌷


set Xframe 1; # this parameter would be passed in set fDir "Data/";
file mkdir $fDir; # create directory
set outFileID [open $fDir/DataFrame$Xframe.m w]; # Open output file for writing
puts $outFileID "Xframe($Xframe) = $Xframe;"; # frame ID
puts $outFileID "Hcol($Xframe) = $Hcol;"; # column diameter
puts $outFileID "Lcol($Xframe) = $Lcol;"; # column length
puts $outFileID "Lbeam($Xframe) = $Lbeam;"; # beam length
puts $outFileID "Hbeam($Xframe) = $Hbeam;"; # beam depth
puts $outFileID "Bbeam($Xframe) = $Bbeam;"; # beam width
puts $outFileID "Weight($Xframe) = $Weight;" ; # superstructure weight
close $outFileID
روشن کردن تکلیف دعواهای بین اینترپرترهای مختلف، یک بار برای همیشه!🌷🌷

عزیزان پرسیده بودند که "آیا به طور کلی لینک کردن نرم افزارهایی مثل اپنسیس، متلب و ... با یکدیگر خوب است یا بد است؟"
در پاسخ باید بگویم خیر، هرگز این کار را نکنید!، مگر آنکه ضعف های اینترپرترهای مختلف (Different Interpreters) را بشناسید! من چون به تمامی این ضعف های خطرناک آگاه هستم و گاها برخی از آنها را دست کاری نیز نموده ام، همیشه از این پتانسیل بالقوه استفاده بهینه می کنم!
در لحظه های آتی و جهت کمی تخصصی تر کردن مباحث، یک بلوک سطح متوسط را به دو زبان برنامه نویسی TCL و #C می نویسم و در کانال قرار می دهم. پس از آن اگر بتوانم مشکلم را با پدیده عجیب و غریب زمان حل کنم!، به تفصیل خواهم گفت که کامندهای مختلف در این دو زبان متفاوت، چگونه به زبان ماشین تبدیل می شوند‌؟! و چگونه برای یک کامند خاص، بنیان های اینترپرترهای دو زبان برنامه نویسی با یکدیگر تعارضاتی جدی و دعواهایی خیلی شدید دارند؟!
بلوک های زبان برنامه نویسی TCL مختص مختصات نودها و تعریف قیود، جهت مقایسه با اینترپرتر زبان #C (پست بعدی):🌷

wipe
# Units: kip, in, sec

# ----------------------------
# Start of model generation
# ----------------------------

# Create ModelBuilder with 3 dimensions and 6 DOF/node
model BasicBuilder -ndm 3 -ndf 6

# Define geometry
# ---------------

# Set parameters for model geometry
set h 144.0; # Story height
set by 240.0; # Bay width in Y-direction
set bx 240.0; # Bay width in X-direction
# Create nodes
# tag X Y Z
node 1 [expr -$bx/2] [expr $by/2] 0
node 2 [expr $bx/2] [expr $by/2] 0
node 3 [expr $bx/2] [expr -$by/2] 0
node 4 [expr -$bx/2] [expr -$by/2] 0

node 5 [expr -$bx/2] [expr $by/2] $h
node 6 [expr $bx/2] [expr $by/2] $h
node 7 [expr $bx/2] [expr -$by/2] $h
node 8 [expr -$bx/2] [expr -$by/2] $h

node 10 [expr -$bx/2] [expr $by/2] [expr 2*$h]
node 11 [expr $bx/2] [expr $by/2] [expr 2*$h]
node 12 [expr $bx/2] [expr -$by/2] [expr 2*$h]
node 13 [expr -$bx/2] [expr -$by/2] [expr 2*$h]

node 15 [expr -$bx/2] [expr $by/2] [expr 3*$h]
node 16 [expr $bx/2] [expr $by/2] [expr 3*$h]
node 17 [expr $bx/2] [expr -$by/2] [expr 3*$h]
node 18 [expr -$bx/2] [expr -$by/2] [expr 3*$h]

# Master nodes for rigid diaphragm
# tag X Y Z
node 9 0 0 $h
node 14 0 0 [expr 2*$h]
node 19 0 0 [expr 3*$h]

# Set base constraints
# tag DX DY DZ RX RY RZ
fix 1 1 1 1 1 1 1
fix 2 1 1 1 1 1 1
fix 3 1 1 1 1 1 1
fix 4 1 1 1 1 1 1

# Define rigid diaphragm multi-point constraints
# normalDir master slaves
rigidDiaphragm 3 9 5 6 7 8
rigidDiaphragm 3 14 10 11 12 13
rigidDiaphragm 3 19 15 16 17 18


# Constraints for rigid diaphragm master nodes
# tag DX DY DZ RX RY RZ
fix 9 0 0 1 1 1 0
fix 14 0 0 1 1 1 0
fix 19 0 0 1 1 1 0
Media is too big
VIEW IN TELEGRAM
مهندسان در کانادا پس از فراغت از تحصيل و اخذ امتياز لازم در آزمونی خاص، در آيينی قسم تعهد می‌خورند و به آنان انگشتر فولادی نشان مهندسان حرفه‌ای اعطا می‌شود که آن را باید در انگشت کوچک دست غالب و امضاکننده بیاندازند تا ضمن یادآوری وظایف خطیر و مسئولیت حساسشان، همواره از نقش حرفه‌ای، اخلاقی و اجتماعی خود به‌ عنوان یک مهندس آگاه باشند. حلقه ازدواج، هزاران بار از این حلقه فولادین حساس تر و مسئولیت زاتر است!
یکی از مکان های مورد علاقه ام، طبقه دوم یک کافی شاپ در نزدیکی آموزشگاهی است که در آنجا تدریس می‌کنم. پاتوقی که بیشترین سهم خاطره‌هایم و مطالعاتم متعلق به آنجا است! مکانی آرام، دنج و البته کمی هم رمانتیک! از این بالا می‌توانم آدم‌هایی را ببینم که آنها نمی‌توانند من را بینند! (چون معمولا موقع راه رفتن به بالا نگاه نمی‌کنند) با برانداز کردن می‌توانم مکث‌هایشان، حرکت‌هایشان و روزمرگی‌هایشان را ببینم و خوب به تمامی آنها فکر کنم. در نهایت پس از تفکر و تجسمی عمیق، ذهنم را وادار کنم تا این آدم‌ها را با کامندهایی جایگزین نماید!، و ببیند آیا الگوریتم حاصله از این حجم کامند عصبانی، کاربردی هم می تواند داشته باشد یا خیر؟! درخت پشت سرم، در پیاده روی خیابان سرو غربی واقع شده است و رایحه عجیب و غریبی دارد. همین جا بود که تعداد زیادی از الگوریتم‌ها را رمزگشایی کردم. صاحب کافی شاپ زیبا که دوستم نیز است، خوب می‌داند موقع برنامه نویسی باید برایم قهوه دابل بیاورد! و خوب می‌داند که من دوست دارم ساعت‌ها تنها باشم و با الگوریتم‌های پیچیده کلنجار بروم. و برایم خیلی غم انگیز است که به زودی باید از این مکان برای همیشه خداحافظی نمایم!
بلوک های زبان برنامه نویسی #C مختص مختصات نودها و تعریف قیود، جهت مقایسه با اینترپرتر زبان TCL (سه پست قبل):🌷

//# Units: kip, in, sec
//# ----------------------------
//# Start of model generation
//# ----------------------------
//# Create ModelBuilder with 3 dimensions and 6 DOF/node
//model BasicBuilder -ndm 3 - ndf 6
var theModel = new OpenSees.AnalysisModelWrapper();
var theDomain = new OpenSees.Components.DomainWrapper();
//# Define geometry
//# Set parameters for model geometry
// set h 144.0; # Story height
//set by 240.0; # Bay width in Y-direction
//set bx 240.0; # Bay width in X-direction
var h = 144.0; //Story height
var by = 240.0; //Bay width in Y-direction
var bx = 240.0; //Bay width in X-direction
//# Create nodes
//# tag X Y Z
// node 1[expr -$bx / 2][expr $by / 2] 0
//node 2[expr $bx / 2][expr $by / 2] 0
//node 3[expr $bx / 2][expr -$by / 2] 0
//node 4[expr -$bx / 2][expr -$by / 2] 0
//node 5[expr -$bx / 2][expr $by / 2] $h
//node 6[expr $bx / 2][expr $by / 2] $h
//node 7[expr $bx / 2][expr -$by / 2] $h
//node 8[expr -$bx / 2][expr -$by / 2] $h
//node 10[expr -$bx / 2][expr $by / 2][expr 2 *$h]
//node 11[expr $bx / 2][expr $by / 2][expr 2 *$h]
//node 12[expr $bx / 2][expr -$by / 2][expr 2 *$h]
//node 13[expr -$bx / 2][expr -$by / 2][expr 2 *$h]
//node 15[expr -$bx / 2][expr $by / 2][expr 3 *$h]
//node 16[expr $bx / 2][expr $by / 2][expr 3 *$h]
//node 17[expr $bx / 2][expr -$by / 2][expr 3 *$h]
//node 18[expr -$bx / 2][expr -$by / 2][expr 3 *$h]
theDomain.AddNode(new OpenSees.Components.NodeWrapper(1, 6, -bx / 2, by / 2, 0));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(2, 6, bx / 2, by / 2, 0));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(3, 6, bx / 2, -by / 2, 0));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(4, 6, -bx / 2, -by / 2, 0));

theDomain.AddNode(new OpenSees.Components.NodeWrapper(5, 6, -bx / 2, by / 2, h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(6, 6, bx / 2, by / 2, h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(7, 6, bx / 2, -by / 2, h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(8, 6, -bx / 2, -by / 2, h));

theDomain.AddNode(new OpenSees.Components.NodeWrapper(10, 6, -bx / 2, by / 2, 2 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(11, 6, bx / 2, by / 2, 2 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(12, 6, bx / 2, -by / 2, 2 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(13, 6, -bx / 2, -by / 2, 2 * h));

theDomain.AddNode(new OpenSees.Components.NodeWrapper(15, 6, -bx / 2, by / 2, 3 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(16, 6, bx / 2, by / 2, 3 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(17, 6, bx / 2, -by / 2, 3 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(18, 6, -bx / 2, -by / 2, 3 * h));
//# Master nodes for rigid diaphragm
//# tag X Y Z
//node 9 0 0 $h
//node 14 0 0[expr 2 *$h]
//node 19 0 0[expr 3 *$h]
theDomain.AddNode(new OpenSees.Components.NodeWrapper(9, 6, 0, 0, 1 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(14, 6, 0, 0, 2 * h));
theDomain.AddNode(new OpenSees.Components.NodeWrapper(19, 6, 0, 0, 3 * h));
//# Set base constraints
//# tag DX DY DZ RX RY RZ
// fix 1 1 1 1 1 1 1
//fix 2 1 1 1 1 1 1
//fix 3 1 1 1 1 1 1
//fix 4 1 1 1 1 1 1
foreach (var nodeId in new int[] { 1, 2, 3, 4 })
{
for (var i = 0; i < 6; i++)
{
theDomain.AddSP_Constraint(new OpenSees.Components.Constraints.SP_ConstraintWrapper(nodeId, i, 0.0, true));
}
}
//# Define rigid diaphragm multi-point constraints
//# normalDir master slaves
//rigidDiaphragm 3 9 5 6 7 8
//rigidDiaphragm 3 14 10 11 12 13
//rigidDiaphragm 3 19 15 16 17 18
theDomain.CreateRigidDiaphragm(9, new IDWrapper(new int[] { 5, 6, 7, 8 }), 2);
theDomain.CreateRigidDiaphragm(14, new IDWrapper(new int[] { 10, 11, 12, 13 }), 2);
theDomain.CreateRigidDiaphragm(19, new IDWrapper(new int[] { 15, 16, 17, 18 }), 2);

//# Constraints for rigid diaphragm master nodes
//# tag DX DY DZ RX RY RZ
//fix 9 0 0 1 1 1 0
//fix 14 0 0 1 1 1 0
//fix 19 0 0 1 1 1 0
foreach (var nodeId in new int[] { 9, 14, 19 })
{
for (var i = 2; i < 5; i++)
{
theDomain.AddSP_Constraint(new OpenSees.Components.Constraints.SP_ConstraintWrapper(nodeId, i, 0.0, true));
}
}
This media is not supported in your browser
VIEW IN TELEGRAM
لحظه بازكردن فواره هاي پارك پترهوف در سنت پترزبورگ، خليج فنلاند، ۲۳ مرداد ۱۳۹۸ رأس ساعت ١١
بلوک زبان برنامه نویسی TCL مختص تعریف رفتار مصالح، جهت مقایسه تخصصی با اینترپرتر زبان #C (پست بعدی):🌷

# Define materials for nonlinear columns
# --------------------------------------
# CONCRETE
# Core concrete (confined)
# tag f'c epsc0 f'cu epscu
uniaxialMaterial Concrete01 1 -5.0 -0.005 -3.5 -0.02

# Cover concrete (unconfined)
set fc 4.0
uniaxialMaterial Concrete01 2 -$fc -0.002 0.0 -0.006

# STEEL
# Reinforcing steel
# tag fy E b
uniaxialMaterial Steel01 3 60 30000 0.02

# Column width
set h 18.0

# Source in a procedure for generating an RC fiber section
source RCsection.tcl

# Column torsional stiffness
set GJ 1.0e10;

# Call the procedure to generate the column section
# id h b cover core cover steel nBars barArea nfCoreY nfCoreZ nfCoverY nfCoverZ GJ
RCsection 1 $h $h 2.5 1 2 3 3 0.79 8 8 10 10 $GJ

# Concrete elastic stiffness
set E [expr 57000.0*sqrt($fc*1000)/1000];

# Linear elastic torsion for the column
# uniaxialMaterial Elastic 10 $GJ

# Attach torsion to the RC column section
# tag uniTag uniCode secTag
# section Aggregator 2 10 T -section 1
پاسخ به سوالات علمی دانشجویان خوب🌷❤️مختص تعطیلات آخر هفته
پاسخ به سوالات علمی دانشجویان خوب🌷❤️مختص تعطیلات آخر هفته
پاسخ به سوالات علمی دانشجویان خوب🌷❤️مختص تعطیلات آخر هفته