You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Documentation updates, revert renaming in mooring.addMarineGrowth()
-- ontology README adds more comments in the example ontology sections to make entries more clear
-- revert renaming of moorpy lineTypes in mooring.addMarineGrowth() back to integers, to reduce length of name
-- small fix to spelling in some comments
The Array sections ([Array Layout](#array-layout), [Array Mooring](#array-mooring), and [Array Cables](#array-cables)) describe the location and connections of components in the array, such as platforms, moorings, and cables. They also reference indexes or names of component designs that are described in other parts of the ontology.
48
+
49
+
The component-specific sections ([Turbine(s)](#turbines), [Platform(s)](#platforms), [Mooring](#mooring), and [Cables](#cables)) each describe a unique design of that component type, and therefore only need to be listed once regardless of how many of that component type exists in the array. For example, if you have only 1 unique platform design that should be applied to all platforms in the array, you only need to list 1 design in the [Platform(s)](#platforms) section and then reference that index in the array table to designate that each platform in the array should use that design.
50
+
47
51
The following sections give an overview of the array ontology makeup with examples.
48
52
49
53
@@ -288,9 +292,18 @@ Setting topsideID = 0 signifies this platform does not have a topside. In this c
# ID: unique identifier for that platform/turbine system (can be anything you want)
296
+
# topside ID: index in list of topsides, which includes wind turbines (indices starting at 1. 0 means there is no topside)
297
+
# platform ID: index in list of platforms, which includes FOWT platforms, substation platforms, etc. (indices starting at 1, 0 means there is no platform)
298
+
# mooringID: string/id of mooring system to apply to this platform if using mooring_system. If you want to define the mooring lines individually (i.e. through array_mooring table),
299
+
# then set mooringID=0, which means there is no mooring system and we've instead individually defined the mooring lines in the array_mooring table.
300
+
# x_location: x coord of platform location
301
+
# y_location: y coord of platform location
302
+
# z_location: z coord of platform location. For FOWTs generally is 0
303
+
# heading_adjust: rotation of platform relative to its 0 position defined for that platformID
291
304
data : # ID ID# ID# ID# [m] [m] [m] [deg]
292
305
- [fowt1, 1, 1, ms1, 0, 0, 0, 180 ]
293
-
- [f2, 1, 2, ms2, 1600, 0, 0, 0 ]
306
+
- [f2, 1, 1, ms2, 1600, 0, 0, 0 ]
294
307
- [substation1, 0, 2, ms3, -1600, 0, 0, 0 ]
295
308
```
296
309
@@ -315,16 +328,25 @@ If a mooring line has multiple connection points to a platform, such as in the c
315
328
array_mooring:
316
329
anchor_keys :
317
330
[ID, type, x, y, embedment ]
331
+
# ID: unique identifier for that anchor
332
+
# type: references the anchor design in the anchor_types section (key in anchor_types section)
# MooringConfigID: references the mooring line configuration in the mooring_line_configs section (key in mooring_line_configs section)
342
+
# endA: ID of attachment for one end of the mooring line (either platform ID from array table or anchor ID from anchor_data table)
343
+
# endB: ID of the other end of the mooring line. This end MUST be a platform ID from the array table (anchors are ALWAYS attached at endA)
344
+
# fairleadA: index of fairlead on endA platform (if endA is a platform). If endA is an anchor, set fairleadA to NONE. If multiple fairleads attached to mooring (i.e. bridles), list all attached fairleads. Indices start at 1
345
+
# fairleadB: index of fairlead on endB platform. If multiple fairleads attached to mooring (i.e. bridles), list all attached fairleads. Indices start at 1
324
346
line_data :
325
347
- [ semitaut-poly_1 , anch1, fowt1, None, 1]
326
348
- [ semitaut-poly_1 , anch2, fowt3, None, 2]
327
-
- [ semitaut-poly_bridle , fowt1, f2, 2, [3,4]]
349
+
- [ semitaut-poly_bridle , fowt1, f2, 2, [3,4]] # this mooring line has a bridle at end B, so it is attached to 2 different fairleads for end B
328
350
```
329
351
330
352
### Array Cables
@@ -342,9 +364,18 @@ If a cable does not have a feature (for example, a suspended cable would not hav
# AttachA: ID of attachment for end A of the cable (platform ID from array table )
368
+
# AttachB: ID of attachment for end B of the cable (platform ID from array table)
369
+
# DynCableA: dynamic cable configuration ID at end A (matches key from dynamic_cables section)
370
+
# DynCableB: dynamic cable configuration ID at end B (matches key from dynamic_cables section). If there is only 1 dynamic cable (i.e. a suspended cable design), put NONE
371
+
# headingA: compass heading of dynamic cable relative to platform heading (if platform at end A is rotated +15, headingA should be true heading - 15)
372
+
# headingB: compass heading of dynamic cable relative to platform heading (if platform at end B is rotated +15, headingB should be true heading - 15)
373
+
# JtubeA: OPTIONAL KEY, index of Jtube on endA platform. Indices start at 1
374
+
# JtubeB: OPTIONAL KEY, index of Jtube on endB platform. Indices start at 1
375
+
# cableType: references a cable type from cable_types section. If no static cable (i.e. a suspended cable design), put NONE
- [ fowt1, f2, suspended_1, None, 90, 270, 2, 3, None ] # suspended cable, so put None for DynCableB and cableType (since there's just one dynamic cable attached to both ends and no static cable)
348
379
```
349
380
350
381
## Topside(s)
@@ -356,7 +387,7 @@ the [WindIO](https://windio.readthedocs.io) ontology format, which is also used
356
387
by [WEIS](https://weis.readthedocs.io).
357
388
358
389
```yaml
359
-
type : Turbine
390
+
type : Turbine # type of topside (generally Turbine but could be Substation etc)
360
391
mRNA : 991000 # [kg] RNA mass
361
392
IxRNA : 0 # [kg-m2] RNA moment of inertia about local x axis (assumed to be identical to rotor axis for now, as approx) [kg-m^2]
362
393
IrRNA : 0 # [kg-m2] RNA moment of inertia about local y or z axes [kg-m^2]
@@ -395,7 +426,7 @@ By default, the format here follows that used by
395
426
dictionary for each platform in the first level of each platform listed. In this case, type describes the kind of platform (i.e. FOWT for a floating wind turbine, Substation, WEC).
396
427
397
428
Optional entries include:
398
-
- *fairleads* : a list of dictionaries providing information on the relative fairlead locations of the platform. The exact relative positions can be listed for each fairlead, or a relative position and headings (relative to 0 platform heading) can be provided. If a list of fairlead headings is provided in one fairlead entry, the heading list indices are added to the list of fairlead indices referenced in mooring_systems or array_mooring. For the case below, the 30 degree heading would be index 1, 150 degree heading would be index 2, 270 degree heading would be index 3, and the 'fairleads2' entry (with relative position [-57.779,-5.055, -14]) would be index 4)
429
+
- *fairleads* : a list of dictionaries providing information on the relative fairlead locations of the platform. The exact relative positions can be listed for each fairlead, or a relative position and headings (relative to 0 platform heading) can be provided. If a list of fairlead headings is provided in one fairlead entry, the heading list indices are added to the list of fairlead indices referenced in mooring_systems or array_mooring. For the case below, the 30 degree heading would be index 1, 150 degree heading would be index 2, 270 degree heading would be index 3, and the 'fairleads2' entry (with relative position [-57.779,-5.055, -14]) would be index 4
399
430
- *Jtubes*: a list of dictionaries providing information on the relative J-tube locations on the platform. Like fairleads, the exact relative position can be provided or a relative position and list of headings (relative to 0 platform heading) can also be provided. If a list of j-tube headings is provided in one j-tube entry, the heading list indices are added to the list of j-tube indices referenced in cables or array_cables (just like fairleads).
400
431
- *rFair*: fairlead radius. MUST be provided if fairleads and Jtubes not provided.
401
432
- *zFair*: fairlead depth with respect to the platform depth. MUST be provided if fairleads and Jtubes not provided.
@@ -423,7 +454,7 @@ platform:
423
454
headings: [90, 210, 330] # headings in degrees for the Jtube (if multiple headings, the Jtube will be repeated for each heading)
424
455
rFair : 58
425
456
zFair : -15
426
-
type : FOWT # floating wind turbine platform
457
+
type : FOWT # type of platform, in this case a floating wind turbine platform (FOWT) but could be WEC (wave energy converter), buoy, or anything else
427
458
z_location : 0 # OPTIONAL INPUT - default is 0
428
459
429
460
members: # list all members here
@@ -474,6 +505,10 @@ mooring_systems:
474
505
name: 3-line taut polyester mooring system with 3rd line bridle
# MooringConfigID: references a key from mooring_line_configurations section
509
+
# heading: compass heading, relative to platform heading
510
+
# anchorType: references a key from anchor_types section
511
+
# fairlead: optional parameter that specifies index of a fairlead point listed in the associated platform design in the platforms section
477
512
data:
478
513
- [ semitaut-poly_1, 30 , suction 1, 1 ]
479
514
- [ semitaut-poly_1, 150 , suction 1, 2 ]
@@ -510,32 +545,32 @@ A section of line that has multiple parallel sections, such as a bridle or doubl
510
545
511
546
```yaml
512
547
mooring_line_configs:
513
-
514
-
catenary_1:
515
-
name: catenary configuration 1
548
+
# Simple catenary line with 1 mooring line material (chain)
549
+
catenary_1: # mooring line configuration identifier (referenced in array_mooring or mooring_systems sections)
550
+
name: catenary configuration 1 # descriptive name
516
551
517
-
span: 779.6
552
+
span: 779.6 # 2D (x-y) distance from anchor to fairlead [m]
518
553
519
-
sections:
520
-
- mooringFamily: chain
521
-
d_nom: 0.185 # m
522
-
length: 850
523
-
adjustable: True
524
-
554
+
sections: # in order from anchor to fairlead
555
+
- mooringFamily: chain # name of material, references a MoorPy mooring property scaling file
556
+
d_nom: 0.185 # [m], nominal diameter of the mooring material. This is required if using 'mooringFamily' so the mooring properties are scaled properly
557
+
length: 850 # [m], unstretched length of the line section
558
+
adjustable: True # flags that this section could be adjusted to accommodate different spacings...
559
+
# Semi-taut mooring line with 2 mooring line materials (chain and polyester)
525
560
semitaut-poly_1: # mooring line configuration identifier
526
561
527
562
name: Semitaut polyester configuration 1 # descriptive name
528
563
529
-
span: 642
564
+
span: 642 # 2D (x-y) distance from anchor to fairlead [m]
530
565
531
-
sections: #in order from anchor to fairlead
532
-
- type: chain_155mm # ID of a mooring line section type
533
-
length: 497.7 # [m] usntretched length of line section
534
-
adjustable: True # flags that this section could be adjusted to accommodate different spacings...
535
-
- connectorType: h_link
536
-
- type: polyester_182mm # ID of a mooring line section type
566
+
sections: # in order from anchor to fairlead
567
+
- type: chain_155mm # ID of a mooring line section type listed in mooring_line_types section
568
+
length: 497.7 # [m] usntretched length of line section
569
+
adjustable: True # flags that this section could be adjusted to accommodate different spacings...
570
+
- connectorType: h_link # ID of a connector type listed in mooring_connector_types section
571
+
- type: polyester_182mm # ID of a mooring line section type listed in mooring_line_types section
537
572
length: 199.8 # [m] length (unstretched)
538
-
573
+
# Complex taut mooring line with a double chain section in the middle and a bridle at the fairlead
539
574
taut_bridle_double_chain: # mooring line configuration identifier
540
575
541
576
name: rope configuration 1 with a bridle # descriptive name
@@ -546,36 +581,36 @@ A section of line that has multiple parallel sections, such as a bridle or doubl
546
581
sections: #in order from anchor to fairlead
547
582
- type: chain_155mm
548
583
length: 20
549
-
- type: rope # ID of a mooring line section type
550
-
length: 500 # [m] usntretched length of line section
551
-
- connectorType: triplate
552
-
- subsections: # double chain section
553
-
- - mooringFamily: chain
554
-
d_nom: 0.1
584
+
- type: rope # ID of a mooring line section type
585
+
length: 500 # [m] usntretched length of line section
586
+
- connectorType: triplate # ID of connector type in mooring_connector_types section (triplate connector attaching double chain section to the rope)
587
+
- subsections: # double chain section (2 parallel sections of chain connected on either end to a triplate)
588
+
- - mooringFamily: chain # one parallel chain section
589
+
d_nom: 0.1 # [m], nominal diameter of chain, used to scale mooring material properties from MoorPy mooring properties file
555
590
length: 120
556
-
- - mooringFamily: chain
591
+
- - mooringFamily: chain # second parallel chain section
557
592
d_nom: 0.1
558
593
length: 120
559
-
- connectorType: triplate
560
-
- type: rope # ID of a mooring line section type
561
-
length: 500 # [m] usntretched length of line section
562
-
- subsections: # bridle sections for end B
563
-
- - type: rope
564
-
length: 50
565
-
- connectorType: shackle
566
-
- - type: rope
594
+
- connectorType: triplate # triplate connector attaching double chain section to the rope
595
+
- type: rope # ID of a mooring line section type
596
+
length: 500 # [m] usntretched length of line section
597
+
- subsections: # bridle sections for end B (rope bridle with shackle connecting to fairlead)
598
+
- - type: rope # ID of a mooring line section type listed in mooring_line_types section
599
+
length: 50 # [m] unstretched length of line section
600
+
- connectorType: shackle # ID of a connector type in mooring_connector_types section
601
+
- - type: rope # ID of a mooring line section type
567
602
length: 50
568
603
- connectorType: shackle
569
604
570
-
605
+
# symmetric shared line configuration definition
571
606
rope_shared:
572
607
name: shared rope line shown symmetrically
573
-
symmetric: True
608
+
symmetric: True # mooring line is symmetric about the middle. Only half of the line is defined, and will be mirrored to make a full line
574
609
575
-
span: 1484
610
+
span: 1484 # [m] 2D (x-y) distance from fairlead to fairlead (for the full line, not half)
576
611
577
612
578
-
sections:
613
+
sections: # list of sections starting at end A, which will be mirrored (real line will be 150 m rope, clump weight, 1172 m rope, clump weight, 150 m rope)
0 commit comments