Changeset 26649 for issm/trunk-jpl/src/jl/solve/inputs.jl
- Timestamp:
- 11/19/21 11:13:48 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/jl/solve/inputs.jl
r26629 r26649 13 13 interp::IssmEnum 14 14 values::Vector{Float64} 15 element_values::Vector{Float64} 15 16 end# }}} 16 17 … … 23 24 24 25 #Inputs functions 26 function GetInput(inputs::Inputs,enum::IssmEnum) #{{{ 27 28 #Does this input exist 29 if !haskey(inputs.lookup,enum) 30 error("Input ",enum," not found") 31 end 32 33 #return input 34 return inputs.lookup[enum] 35 36 end#}}} 25 37 function SetInput(inputs::Inputs,enum::IssmEnum,index::Int64,value::Bool) #{{{ 26 38 … … 48 60 @assert inputs.numberofelements > 0 49 61 if interp==P0Enum 50 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofelements) )62 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofelements),Vector{Float64}(undef,1)) 51 63 elseif interp==P1Enum 52 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofvertices) )64 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofvertices),Vector{Float64}(undef,3)) 53 65 else 54 66 error("not supported yet") … … 71 83 @assert inputs.numberofvertices>0 72 84 if interp==P1Enum 73 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofvertices) )85 inputs.lookup[enum] = ElementInput(enum,interp,zeros(inputs.numberofvertices),Vector{Float64}(undef,3)) 74 86 else 75 87 error("not supported yet") … … 85 97 input.values[indices] = values 86 98 end#}}} 99 function GetInputValue(input::ElementInput,gauss::GaussTria,i::Int64) 100 101 if input.interp==P0Enum 102 return input.element_value 103 elseif input.interp==P1Enum 104 value = input.element_values[1]*gauss.coords1[i] + input.element_values[2]*gauss.coords2[i] + input.element_values[3]*gauss.coords3[i] 105 else 106 error("not implemented yet") 107 end 108 109 return value 110 111 end#}}}
Note:
See TracChangeset
for help on using the changeset viewer.