From b09da8a3b0c125f437c48a745e727f2ee2d80d3c Mon Sep 17 00:00:00 2001 From: kevmoor <64861600+kevmoor@users.noreply.github.com> Date: Fri, 12 Jul 2024 17:02:36 -0600 Subject: [PATCH 1/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fbab4fe5..ebabaece 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ Turbulent inflow is provided by OWENSOpenFASTWrappers.jl and the inflowwind and Rainflow counting was provided by Rainflow.jl, however, this package became orphained and was pulled into the OWENS code base. ## Installation -Please follow the instructions on the setup page +Please follow the instructions on the setup page in the documentation. ## Documentation - https://sandialabs.github.io/OWENS.jl From 1f8f7bc30504ce362b906496b0a254ffc1da848f Mon Sep 17 00:00:00 2001 From: kevmoor Date: Mon, 15 Jul 2024 08:19:45 -0600 Subject: [PATCH 2/3] Fix inwork docs --- docs/src/getting_started.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/docs/src/getting_started.md b/docs/src/getting_started.md index 8aa44af1..9de752b3 100644 --- a/docs/src/getting_started.md +++ b/docs/src/getting_started.md @@ -1,7 +1 @@ -# Optimization Considerations - -My text - -[comment] ![](../assets/OWENS_Example_Figure_Building_Blocks.png) - -my text \ No newline at end of file +# nothing yet \ No newline at end of file From 14c74cdd375a72a630f051908ad094aec91bb4c0 Mon Sep 17 00:00:00 2001 From: kevmoor Date: Tue, 16 Jul 2024 16:10:55 -0600 Subject: [PATCH 3/3] Custom mesh inputs --- src/SetupTurbine.jl | 34 +++++++++++++++++++++++++++++++--- src/Unsteady_Land.jl | 2 +- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/src/SetupTurbine.jl b/src/SetupTurbine.jl index 647bdcca..348fc0f6 100644 --- a/src/SetupTurbine.jl +++ b/src/SetupTurbine.jl @@ -49,7 +49,8 @@ function setupOWENS(OWENSAero,path; DSModel="BV", RPI=true, cables_connected_to_blade_base = true, - meshtype = "Darrieus") #Darrieus, H-VAWT, ARCUS + meshtype = "Darrieus", + custommesh = nothing) #Darrieus, H-VAWT, ARCUS if AModel=="AD" AD15On = true @@ -77,7 +78,7 @@ function setupOWENS(OWENSAero,path; ######################################### ### Set up mesh ######################################### - if meshtype == "ARCUS" #TODO, for all of these propogate the AeroDyn additional output requirements + if meshtype == "ARCUS" && custommesh == nothing #TODO, for all of these propogate the AeroDyn additional output requirements mymesh,myort,myjoint = OWENS.create_arcus_mesh(;Htwr_base, Hbld = H, #blade height R, # m bade radius @@ -91,7 +92,7 @@ function setupOWENS(OWENSAero,path; joint_type, #hinged about y axis cables_connected_to_blade_base, angularOffset) #Blade shape, magnitude is irrelevant, scaled based on height and radius above - elseif meshtype == "Darrieus" || meshtype == "H-VAWT" + elseif (meshtype == "Darrieus" || meshtype == "H-VAWT") && custommesh == nothing if meshtype == "Darrieus" connectBldTips2Twr = true @@ -117,6 +118,25 @@ function setupOWENS(OWENSAero,path; AD15_ccw = true, verbosity=0, # 0 nothing, 1 basic, 2 lots: amount of printed information connectBldTips2Twr) + elseif custommesh != nothing + mymesh, myort, myjoint, AD15bldNdIdxRng, AD15bldElIdxRng = custommesh(;Htwr_base, + Htwr_blds, + Hbld = H, #blade height + R, # m bade radius + AD15hubR, #TODO: hook up with AD15 file generation + nblade = Nbld, + ntelem, #tower elements + nbelem, #blade elements + nselem, + strut_twr_mountpoint, + strut_bld_mountpoint, + bshapex = shapeX, #Blade shape, magnitude is irrelevant, scaled based on height and radius above + bshapez = shapeZ, + bshapey = shapeY, # but magnitude for this is relevant + angularOffset, #Blade shape, magnitude is irrelevant, scaled based on height and radius above + AD15_ccw = true, + verbosity=0, # 0 nothing, 1 basic, 2 lots: amount of printed information) + ) else #TODO unify with HAWT error("please choose a valid mesh type (Darrieus, H-VAWT, ARCUS)") end @@ -367,6 +387,14 @@ function setupOWENS(OWENSAero,path; end rotationalEffects = ones(mymesh.numEl) #TODO: non rotating tower, or rotating blades + if length(sectionPropsArray) TOL || platNorm > TOL || aziNorm > TOL || gbNorm > TOL) || (numIterations >= MAXITER)) - OWENSFEA.structuralDynamicsTransient(topModel,topMesh,topEl,topdata.topDispData2,topdata.Omega_s,topdata.OmegaDot_s,t[i+1],topdata.delta_t,topdata.topElStorage,topdata.topFexternal,Int.(aeroDOFs),topdata.CN2H,topdata.rbData;predef = topModel.nlParams.predef) + OWENSFEA.structuralDynamicsTransient(topModel,topMesh,topEl,topdata.topDispData2,topdata.Omega_s,topdata.OmegaDot_s,t[i+1],topdata.delta_t,topElStorage,topdata.topFexternal,Int.(aeroDOFs),topdata.CN2H,topdata.rbData;predef = topModel.nlParams.predef) end if verbosity>4