Agent skill
marine-offshore-engineering-5-regulatory-framework
Sub-skill of marine-offshore-engineering: 5. Regulatory Framework (+1).
Install this agent skill to your Project
npx add-skill https://github.com/vamseeachanta/workspace-hub/tree/main/.claude/skills/_archive/engineering/marine-offshore/marine-offshore-engineering/5-regulatory-framework
SKILL.md
5. Regulatory Framework (+1)
5. Regulatory Framework
Classification Societies:
- DNV (Det Norske Veritas) - Norwegian
- ABS (American Bureau of Shipping) - American
- Lloyd's Register - British
- Bureau Veritas - French
Key Standards:
standards:
structural:
- DNV-OS-C101: Design of Offshore Steel Structures
- API RP 2A-WSD: Fixed Offshore Platforms
- ISO 19902: Fixed Steel Structures
floating:
- DNV-OS-C103: Floating Structures
- API RP 2FPS: Planning, Designing, Constructing Floating Production Systems
mooring:
- DNV-OS-E301: Position Mooring
- API RP 2SK: Stationkeeping Systems
- ISO 19901-7: Stationkeeping Systems
subsea:
- API 17D: Subsea Wellhead and Christmas Tree Equipment
- API 17J: Unbonded Flexible Pipe
- DNV-OS-F101: Submarine Pipeline Systems
operations:
- DNV-RP-H103: Modelling and Analysis of Marine Operations
- ISO 19901-6: Marine Operations
6. Marine Operations
Installation Methods:
- Heavy Lift - Crane vessels for topsides
- Float-over - Deck floated over substructure
- Pipelaying - S-lay, J-lay, reel-lay methods
Weather Windows:
def calculate_weather_window(
sea_states: list,
operation_limit: dict,
duration_required: float # hours
) -> list:
"""
Identify suitable weather windows for marine operations.
Args:
sea_states: List of sea state forecasts
operation_limit: Limits (Hs_max, Tp_range, current_max)
duration_required: Required continuous calm period
Returns:
List of suitable time windows
"""
windows = []
current_window_start = None
current_window_duration = 0
for i, state in enumerate(sea_states):
# Check if conditions are suitable
suitable = (
state['Hs'] <= operation_limit['Hs_max'] and
state['current'] <= operation_limit['current_max']
)
if suitable:
if current_window_start is None:
current_window_start = i
current_window_duration += state['time_step']
# Check if window is long enough
if current_window_duration >= duration_required:
windows.append({
'start': current_window_start,
'duration': current_window_duration,
'conditions': 'suitable'
})
else:
# Window ended
current_window_start = None
current_window_duration = 0
return windows
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
gsd-complete-milestone
Archive completed milestone and prepare for next version
gsd-reapply-patches
Reapply local modifications after a GSD update
gsd-verify-work
Validate built features through conversational UAT
gsd-thread
Manage persistent context threads for cross-session work
clinical-trial-protocol
Generate clinical trial protocols for medical devices or drugs through a modular, waypoint-based architecture with research-only and full protocol modes.
single-cell-rna-qc
Performs quality control on single-cell RNA-seq data (.h5ad or .h5 files) using scverse best practices with MAD-based filtering and comprehensive visualizations.
Didn't find tool you were looking for?