Სარჩევი:

საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას: 8 ნაბიჯი
საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას: 8 ნაბიჯი

ვიდეო: საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას: 8 ნაბიჯი

ვიდეო: საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას: 8 ნაბიჯი
ვიდეო: ბჰაგავან შრი სატია საი ბაბა - "მაცოცხლებელი წვიმები ბრინდავანში 1979" - აუდიო წიგნი 2024, ივლისი
Anonim
საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას
საზომი ძალა გენერირებული ბოჭკოვანი ქსელის ცვლილებები გარე ძალებით გადაადგილებისას

უჯრედებს შეუძლიათ ურთიერთქმედება გარე უჯრედულ მატრიქსთან (ECM) და შეუძლიათ გამოიყენონ და მოახდინონ რეაგირება ECM– ის მიერ განხორციელებულ ძალებზე. ჩვენი პროექტისთვის, ჩვენ ვასწავლით ბოჭკოების ერთმანეთთან დაკავშირებულ ქსელს, რომელიც მოქმედებს როგორც ECM და ვნახავთ, როგორ იცვლება ქსელი ერთ -ერთი წერტილის მოძრაობის საპასუხოდ. ECM მოდელირებულია, როგორც წყლების ერთმანეთთან დაკავშირებული სისტემა, რომლებიც თავდაპირველად წონასწორობაშია ნულოვანი წმინდა ძალის მქონე. როგორც ქსელში ძალა გამოიყენება წერტილების მოძრაობის საპასუხოდ, ჩვენ ვცდილობთ მივიღოთ დაკავშირებული წერტილები რეაგირება მოახდინონ ძალაზე ისე, რომ ისინი ცდილობენ წონასწორობის დაბრუნებას. ძალა მონიტორინგდება განტოლებით F = k*x სადაც k არის გაზაფხულის მუდმივი და x არის ბოჭკოს სიგრძის ცვლილება. ეს სიმულაცია დაეხმარება ბოჭკოვან ქსელებში ძალის გავრცელების ზოგად გაგებას, რაც საბოლოოდ შეიძლება გამოყენებულ იქნას მექანიკური ტრანსდუქციის სიმულაციის დასახმარებლად.

ნაბიჯი 1: შექმენით NxN ერთიანი კვადრატების მატრიცა

შექმენით NxN ერთიანი კვადრატების მატრიცა
შექმენით NxN ერთიანი კვადრატების მატრიცა
შექმენით NxN ერთიანი კვადრატების მატრიცა
შექმენით NxN ერთიანი კვადრატების მატრიცა

კოდის დასაწყებად, ჩვენ ვირჩევთ N, რომელიც განსაზღვრავს ჩვენი ქსელის ზომებს (NxN). N- ის მნიშვნელობა შეიძლება ხელით შეიცვალოს, რათა საჭიროებისამებრ შეცვალოს ქსელის ზომები. ამ მაგალითში N = 8, ასე რომ ჩვენ გვაქვს წერტილების 8x8 ქსელი. მას შემდეგ, რაც ჩვენ წარმოვადგენთ მატრიცას, ჩვენ ვუკავშირდებით მატრიცის ყველა წერტილს, რომელსაც აქვს 1 ერთეულის სიგრძე მანძილის ფორმულის გამოყენებით, მანძილი = sqrt ((x2-x1)^2+(y2-y1)^2). ამით ჩვენ ვიღებთ კვადრატების ქსელს, რომლებიც ყველა თანაბრად არის დაშორებული 1 ერთეულით. ეს ჩანს 101 -ში.

ნაბიჯი 2: ქსელის რანდომიზაცია

ქსელის რანდომიზაცია
ქსელის რანდომიზაცია
ქსელის რანდომიზაცია
ქსელის რანდომიზაცია

ამ ნაბიჯში, ჩვენ გვსურს შემთხვევითი შემთხვევის ყველა წერტილის ადგილის გარდა გარე პუნქტებისა, რომლებიც ქმნიან ჩვენს საზღვარს. ამისათვის ჩვენ პირველად ვიპოვით ყველა მატრიცის კოორდინატს, რომელიც ტოლია 0 ან N. ეს წერტილები არის ის, ვინც ქმნის საზღვარს. უსაზღვრო წერტილებისთვის, ადგილი რანდომიზებულია სხვადასხვა შემთხვევითი მნიშვნელობის დამატებით -5 -დან.5 -მდე ორივე x და y პოზიციებზე. გრაფიკული რანდომიზებული სურათი ჩანს სურათზე 1.

ნაბიჯი 3: მიიღეთ ახალი დისტანციები

მიიღეთ ახალი დისტანციები
მიიღეთ ახალი დისტანციები

მას შემდეგ რაც ჩვენი რანდომიზებული ქსელი შეიქმნება, ჩვენ ვპოულობთ მანძილს დაკავშირებულ წერტილებს შორის მანძილის ფორმულის გამოყენებით.

ნაბიჯი 4: შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას

შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას
შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას
შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას
შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას
შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას
შეარჩიეთ წერტილი და შეადარეთ მანძილი ამ წერტილიდან სხვას

ამ ეტაპზე, ჩვენ შეგვიძლია ავირჩიოთ საინტერესო წერტილი კურსორის გამოყენებით, როგორც ეს ნაჩვენებია სურათზე 2. თქვენ არ გჭირდებათ კურსორის ზუსტად გადატანა წერტილზე, რადგან კოდი შეასწორებს მას უახლოეს კავშირის წერტილში. ამისათვის ჩვენ პირველად გამოვთვლით მანძილს ყველა დაკავშირებულ წერტილსა და ჩვენს მიერ შერჩეულ წერტილს შორის. მას შემდეგ, რაც გამოითვლება ყველა დისტანცია, ჩვენ ვირჩევთ წერტილს შერჩეული წერტილიდან ყველაზე მცირე მანძილით, რომ გახდეს ფაქტობრივი არჩეული წერტილი.

ნაბიჯი 5: გადადით ახალ პუნქტზე

გადადით ახალ პუნქტზე
გადადით ახალ პუნქტზე
გადადით ახალ პუნქტზე
გადადით ახალ პუნქტზე
გადადით ახალ პუნქტზე
გადადით ახალ პუნქტზე

ამ ეტაპზე, წინა ეტაპზე შერჩეული წერტილის გამოყენებით, ჩვენ გადავიყვანთ წერტილს ახალ ადგილას. ეს მოძრაობა ხდება კურსორის ახალი პოზიციის შერჩევით, რომელიც ჩაანაცვლებს წინა პოზიციას. ეს მოძრაობა გამოყენებული იქნება გაძლიერებული ძალის სიმულაციისთვის გაზაფხულის სიგრძის ცვლილების გამო. ცისფერ ფიგურაში ირჩევა ახალი მდებარეობა. მომდევნო ფიგურაში, მოძრაობის ვიზუალიზაცია შესაძლებელია ნარინჯისფერი კავშირებით, რომლებიც ახალი ადგილებია, განსხვავებით ლურჯი კავშირებისგან, რომლებიც ძველი ადგილები იყო.

ნაბიჯი 6: ძალა = K*მანძილი

ძალა = K*მანძილი
ძალა = K*მანძილი

ამ ნაბიჯში ჩვენ ვიყენებთ განტოლების ძალას = k*მანძილი, სადაც k არის მუდმივი 10 კოლაგენის ბოჭკოებისთვის. იმის გამო, რომ ბოჭკოვანი ქსელი იწყება მისი წონასწორობის მდგომარეობიდან, წმინდა ძალა არის 0. ჩვენ ვქმნით ნულოვან ვექტორს იმ მატრიცის სიგრძეზე, რომელიც ადრე შევქმენით ამ წონასწორობის გამოსახატავად.

ნაბიჯი 7: შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო

შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო
შეცვალეთ ქსელის მოძრაობა გადაადგილებული წერტილის გამო

ამ ეტაპზე, ჩვენ სიმულაციას ვაძლევთ ქსელის მოძრაობას წერტილოვანი მოძრაობის საპასუხოდ, რათა დაუბრუნდეს წონასწორობის მდგომარეობას. ჩვენ ვიწყებთ ახალი წერტილების პოვნას ორ წერტილს შორის. ამით ჩვენ შეგვიძლია ვიპოვოთ ბოჭკოს სიგრძის ცვლილება ძველ და ახალ დისტანციებს შორის სხვაობის დათვალიერებისას. ჩვენ ასევე შეგვიძლია დავინახოთ რომელი წერტილები გადავიდა და ასევე რა წერტილებს უკავშირდება ისინი ახალი და ძველი წერტილების ადგილმდებარეობების შედარების გზით. ეს გვაძლევს საშუალებას დავინახოთ რომელი წერტილები უნდა გადავიდეს განხორციელებული ძალის საპასუხოდ. მოძრაობის მიმართულება შეიძლება დაიყოს მის x და y კომპონენტებად, რაც იძლევა 2D მიმართულების ვექტორს. K მნიშვნელობის, მანძილის ცვლილებისა და მიმართულების ვექტორის გამოყენებით შეგვიძლია გამოვთვალოთ ძალის ვექტორი, რომელიც შეიძლება გამოყენებულ იქნას ჩვენი წერტილების წონასწორობისკენ გადასატანად. ჩვენ ვატარებთ კოდის ამ მონაკვეთს 100 -ჯერ, ყოველ ჯერზე გადადის ძალის ზრდაში*.1. კოდის 100 -ჯერ გაშვება საშუალებას გვაძლევს საბოლოოდ კვლავ მივაღწიოთ წონასწორობას და სასაზღვრო პირობების დაცვით ჩვენ ვხედავთ ქსელის ცვლილებას მთელი ცვლის ნაცვლად. ქსელის მოძრაობა ჩანს 3 -ში, ყვითელი არის გადაადგილებული პოზიციები და ლურჯი წინა.

ნაბიჯი 8: დასრულებული კოდი

ამ განყოფილებაში არის ჩვენი კოდის ასლი. მოგერიდებათ შეცვალოთ იგი თქვენი საჭიროებების შესაბამისად, სხვადასხვა ქსელის მოდელირებით!

გირჩევთ: